⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 interrupt.h

📁 简单的虚拟机
💻 H
字号:
#define handle_int(num) \{ \	switch(num) \	{ \		case 21: \			handle_int21(); \			break; \		case 20: \			handle_int20(); \		break; \	} \}void handle_int21(){	char* str1;	char str2[100]="\0";	char ch;	int n;	int max_strlen;	switch(*greg8_addr(4)) /* ah */	{		case 0x09:			str1=cpu.ram+(cpu.sreg.ds<<4)+cpu.greg.dx;			sscanf(str1,"%[^$]s",str2);			printf("%s",str2);			break;		case 0x4C:			hlt=true;			break;		case 0x0A:			max_strlen=cpu.ram[(cpu.sreg.ds<<4)+cpu.greg.dx];			str1=cpu.ram+(cpu.sreg.ds<<4)+cpu.greg.dx+2;			fgets(str2,max_strlen,stdin);			n=strlen(str2);			cpu.ram[(cpu.sreg.ds<<4)+cpu.greg.dx+1]=n;			str2[n]='\n';			str2[n+1]='\0';			strncpy(str1,str2,n>max_strlen?max_strlen:n);			break;		case 0x02:			printf("%c",*greg8_addr(2));			break;		case 0x01:			ch=getchar();			getchar();			*greg8_addr(0)=ch;			break;		default:			break;	}}void handle_int20(){		hlt=true;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -