微机原理
文章平均质量分 63
《微机原理与接口技术》第四章课后习题
Flying778
乘兴而来,尽兴而归
展开
-
4.3 将AX寄存器中的16位数分成4组,每组4位,然后把这四组数分别放在AL,BL,CL和DL中
主要是通过SHR指令对AX寄存器进行移位,有个容易出错的地方就是,当移位数超过1时,不能直接用指令SHR,而应该先将移位数存入CL,再使用指令SHR AH,CL。最好将AL,BL,CL,DL寄存器的值打印出来。原创 2024-05-14 20:47:14 · 331 阅读 · 0 评论 -
4.2 试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示“MATCH”,若不相同则显示“NO MATCH”
1、通过上述代码,我们可以总结出打印一条字符串的通用方法带有换行和回车的字符串DATA ENDSSTART:显示字符串1,提示用户输入字符串1;或者使用 LEA DX,MES1INT 21HCODE ENDSEND START2、上述两种方法都使用了指令来比较两组字符串之间的内容是否相等repe是一个串操作前缀,它重复串操作指令,每重复一次ECX的值就减1直到CX为0或ZF为0时停止。cmpsb是字符串比较指令,把ESI指向的数据与EDI指向的数一个一个的进行比较。原创 2024-05-13 23:22:33 · 829 阅读 · 2 评论 -
4.1 编写程序,从键盘接收一个小写字母,然后找出他的前导字符和后续字符,再按顺序显示这三个字符
从方法一中我们看出,当输出的字母是A时,打印出来的三个连续字符是“@AB”,这是因为A的ascll码前一位是“@”,如何实现当输出的字母是A时,打印出来的三个连续字符是“ZAB”呢?找到匹配字符后,通过DEC指令将当前所在字符串的位置减1,以便指向输入字符的前导字符,输出;MOV AH 01H:按下任何键,将其对应字符的ASCII码送入AL中,并在屏幕上显示该字符。MOV AH 07H:按下任何键,将其对应字符的ASCII码送入AL中,不在屏幕上显示该字符。3、将输入的字母加上1,得到中间字符,然后输出。原创 2024-05-13 01:18:01 · 390 阅读 · 0 评论