Previous Next
#include”stdio.h”
#include
void main()
{
int noseg,i,physaddr,temp1=0,digits=1,logicaddr,segno,disp,flag=0;
struct
{
int num;
int baseaddr;
int limit;
}segment[5];
clrscr();
printf("\n\nSEGMENTATION\n");
printf("~~~~~~~~~~~~~~\n\n");
printf("Enter the number of segments-->");
scanf("%d",&noseg);
for(i=1;i<=noseg;i++) { segment[i].num=i; printf("Segment Number-->%d",i);
printf("\nBase Segment in Physical Memory-->");
scanf("%d",&segment[i].baseaddr);
printf("\nLimit of Segment-->");
scanf("%d",&segment[i].limit);
}
printf("\nSEGNO\tBASEADDR\tLIMIT\n");
for(i=1;i<=noseg;i++) { printf("%d\t",segment[i].num); printf("%d\t",segment[i].baseaddr); printf("%d\t",segment[i].limit); printf("\n"); } do { while(1) { printf("\n\nEnter Logical Address-->");
scanf("%d",&logicaddr);
if(logicaddr>0)
{
while(temp1
printf("\n\nDisplacement-->%d",disp);
if(disp
printf("\nPhysical Address-->%d",physaddr);
}
else
printf("Error");
break;
}
else
printf("Invalid Logical Address");
}
printf("To continue press 1-->");
scanf("%d",&flag);
}
while(flag==1);
getch();
}
No comments:
Post a Comment