Untitled

 avatar
unknown
plain_text
5 months ago
2.0 kB
3
Indexable
#include<stdio.h>
#include<string.h>
void main()
{
	FILE *f1,*f2,*f3,*f4;
	char s[100],lab[30],opcode[30],opa[30],opcode1[30],opa1[30];
	int locctr,x=0;
	f1=fopen("input.txt","r");
	f2=fopen("opcode.txt","r");
	f3=fopen("out1.txt","w");
	f4=fopen("sym1.txt","w");
	while(fscanf(f1,"%s%s%s",lab,opcode,opa)!=EOF)
	{
		if(strcmp(lab,"**")==0)
		{
			 if(strcmp(opcode,"START")==0)
			{
				fprintf(f3,"%s%s%s",lab,opcode,opa);
				locctr=(atoi(opa));
			}
			else
			{
				rewind(f2);
				x=0;
				while(fscanf(f2,"%s%s",opcode1,opa1)!=EOF)
				{
					if(strcmp(opcode,opcode1)==0)
					{
						x=1;
					}
				}
				if(x==1)
				{
					fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
					locctr=locctr+3;
				}
			}
		}
		else
		{
			if(strcmp(opcode,"RESW")==0)
			{
				fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
				fprintf(f4, "\n%d%s", locctr, lab);
				locctr = locctr+3*(atoi(opa));
			}
			else if(strcmp(opcode,"BYTE")==0)
                        {
                                fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
                                fprintf(f4, "\n%d%s", locctr, lab);
                                locctr = locctr+1;
                        }
			else if(strcmp(opcode,"RESB")==0)
                        {
                                fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
                                fprintf(f4, "\n%d%s", locctr, lab);
                                locctr = locctr+1;
                        }
			else if(strcmp(opcode,"WORD")==0)
                        {
                                fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
                                fprintf(f4, "\n%d%s", locctr, lab);
                                locctr = locctr+3;
                        }
			else
                        {
                                fprintf(f3,"\n%d%s%s%s",locctr,lab,opcode,opa);
                                fprintf(f4, "\n%d%s", locctr, lab);
                                locctr = locctr+(atoi(opa));
                        }
		}
	
	}
}
Editor is loading...
Leave a Comment