EXP 7

//IEEE 802.3 Frame Format
#include<stdio.h>
#include<string.h>
#include<conio.h>

void main()
{
int i=0,len=0;
long int prm;
char st[10],dest[10],src[10],data[70];

clrscr();
printf("Enter Preamble bit:");
scanf("%ld",&prm);
printf("Enter Start Delimeter:");
scanf("%s",st);
printf("Enter Destination Address:");
scanf("%s",dest);
printf("Enter Source Address:");
scanf("%s",src);
printf("Enter Data:");
flushall();
gets(data);

len=strlen(data);
if(len<46)
{
for(i=len;i<46;i++)
{
data[i]='$';
}
}

printf("\n Preamble bit   ||  SFD  || Destination Address  || Source Address || length ||  Data  ||  Checksum\n");
if(len%2==0)
{
printf("\n   %ld\t||%s||\t%s\t||\t%s\t||\t %d  ||\t%s\t||\t %c \n",prm,st,dest,src,len,data,'E');
}
else
{
printf("\n   %ld\t||%s||\t%s\t||\t%s\t||\t %d  ||\t%s\t||\t%c\n",prm,st,dest,src,len,data,'O');
}
getch();
}

/*
Output

Enter Preamble bit:1010101
Enter Start Delimeter:10101011
Enter Destination Address:ABC
Enter Source Address:PQR
Enter Data:11001010101

 Preamble bit   ||  SFD  || Destination Address  || Source Address || length ||
 Data  ||  Checksum

   1010101      ||10101011||    ABC     ||      PQR     ||       11  || 11001010
101$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$  ||      O

*/

Comments