资源描述:
《微机原理及接口设计总结题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.从3000H开始的内存单元中存放有64个有符号数,要求统计其中负数的个数,并将统计结果存入NUM单元。程序段如下:XORDX,DX;MOVSI,3000H;MOVCX,40H;AGN:MOVAL,[SI];INCSI;TESTAL,80H;JZNEXT;INCDX;NEXT:DECCX;JNZAGN;MOVNUM,DX;HLT;2.以DATA为首址的连续单元中的16位无符号数乘以10。LEASI,DATA;MOVAX,[SI];SHLAX,1;*2MOVBX,AX;MOVCL,2;SHLAX,CL;*8ADDAX,BX;HLT;3.测试BL寄存器中
2、第4位的状态,并保持原内容不变。程序段如下:MOVCL,4;ROLBL,CL;CFßD4JNCZERO;RORBL,CL;……;ZERO:RORBL,CL;……;HLT;4.将源串首地址为2000H:1200H开始的100个字节转送到首地址为6000H:4000H开始的内存单元中。程序段如下:MOVAX,2000H;MOVDS,AXMOVAX,6000H;MOVES,AXMOVSI,1200H;MOVDI,4000H;MOVCX,100;CLD;LOOP1:MOVSBDECCXJNZLOOP1HLT5.分别从SOURCE和DEST开始存放两个串长为10
3、0个字节的字符串。试比较两个字符串是否相同,若全部相同,则使BX=0;若不相同,则将源串中第一个不相同字符的偏移地址送BX,不相同字符送AL中。CLD;地址增加方向LEASI,SOURCE;LEADI,DEST;MOVCX,100;NEXT:CMPSB;JNZSTOP;DECCX;JNZNEXT;MOVBX,00H;JMPDONE;STOP:DECSI;MOVBX,SIMOVAL,[BX];DONE:HLT6.在ES:STRING附加数据区首地址开始,按地址减量方向顺序存放有100个字节字符串,在其中查找是否有“A”字符;若有,则将“A”字符所在偏移地
4、址送BX,否则置BX=0。程序段如下:STD;置DF=1,地址减量方向MOVDI,OFFSETSTRING;MOVCX,100;MOVAL,‘A’;NEXT:SCASB;JZSTOP;ZF=1,到“A”相同的字符,转STOPDEXCX;没找到(ZF=0),长度减1JNZNEXT;JMPDONE;STOP:DECDI;字符A所在偏移地址→BXMOVBX,DIJMPEXITDONE:MOVBX,0000H;0000H→BXEXIT:HLT7.以MEM为首地址的内存区域中有10个以非压缩BCD码形式存放的十进制数,它们的值可能是0~9中的任意一个,现编程序将
5、这10个数顺序显示在屏幕上。程序段如下:LEASI,MEMMOVCX,10CLD;MOVAH,02H;功能号(表示单字符显示输出)→AHNEXT:LODSBADDAL,30H;MOVDL,AL;INT21H;输出显示DECCX;JNZNEXT;HLT8.把6000H:1200H单元开始的100个字存储单元内容清零。可用串存储指令实现。程序段如下:MOVAX,6000H;MOVES,AX;MOVDI,1200H;MOVCX,100;CLD;MOVAX,0;REPSTOSW;将100个单元清零HLT9.在ES段中从2000H单元开始存放了10个字符,寻找其
6、中有无字符A。若有则记下搜索次数(次数放DATA1单元),并记下存放字符A的地址(地址放DATA2单元)。程序段如下:MOVDI,2000H;MOVBX,DI;MOVCX,0AH;MOVAL,’A’;CLD;REPNZSCASB;直到找到字符A或CX=0JZFOUND;找到MOVDI,0;没找到使DI=0JMPDONEFOUND:DECDI;DI-1,指向找到的关键字所在地址MOVDATA2,DI;将关键字地址送DATA2单元INCDISUBDI,BX;DONE:MOVDATA1,DI;将搜索次数送DATA1单元HLT10.有10个无符号字节数据顺序存
7、放在以2000H单元为首地址的数据存储区中,编写程序找出其中最大数,并将其存入2200H单元。程序段如下:NAXSTA:MOVBX,2000H;MOVAL,[BX];MOVCX,10;NEXT1:INCBX;CMPAL,[BX];JAENEXT2;MOVAL,[BX];NEXT2:DECCX;JNZNEXT1MOVBX,2200H;MOV[BX],ALHLT11.在内存首地址为TABLE处顺序存放了100个带符号字节数。编写程序统计出其中正数、负数和零的个数,分别将个数存入PLUS、MINUS和ZERO单元。START:XORAL,AL;AL清零MOV
8、PLUS,AL;清零MOVMINUS,AL;清零MOVZERO,AL;清零LEASI,TABL