- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
武汉理工大学微机原理考试重点习题
指令助记符总复习 指令助记符总复习 1. 掌握基本程序结构――顺序结构、循环结构、分支结构及其汇编语言程序设计 2. 熟悉常见程序设计问题: 数据范围判断(0~9、A~Z、a~z) 字母大小写转换; 字符串传送、比较等操作 求最大最小值、数据求和、统计字符个数 数组排序,查找,插入,删除 习题讲解 一.选择题 1。若定义 DAT DW ‘12’ ,则DAT及DAT+1单元的数据是(A) A。32H,31H B。31H,32H C。00H,0CH D。00H,12H 2。下列指令中不影响标志位的是(D) A。ADD BX,CX B。SUB BX,1000 C。SAR DX,1 D。DIV CX 3。串操作中有REP的指令结束的条件是(D) A。ZF=1 B。ZF=0 C。CX》0 D。CX=0 4。指出下面数据段定义的错误 DATA SEGMENT X DB 332H ENDS 5。下面指令不合法的是(A) A。IN AX,03F8H B。MOV BX,AX C。REP CMPSB D。SHR BX,CL 6.下列四个数均为有符号数,其中最大的数是( D )。 A. 3274H B. 8365H C. 9564H D. 5342H 指出下列指令的错误 (1) mov cx,dl (2) mov ip,ax (3) mov es,1234h (4) mov es,ds (5) mov al,300 (6) mov [sp],ax (7) mov ax,bx+di (8) mov 20h,ah (1)两操作数类型不匹配 (2)IP指令指针禁止用户访问 (3)立即数不允许传给段寄存器 (4)段寄存器之间不允许传送 (5)两操作数类型不匹配 (6)目的操作数应为[ SI ] (7)源操作数应为 [BX+DI] (8)立即数不能作目的操作数 问答题 对于由8086/8088 CPU组成的系统,堆栈的位置如何确立?堆栈的首址(即SS中的值)是不是栈底?为什么? 答:8086/8088系统中堆栈的位置由SS和SP初始化后确立:其中(SS)*16决定了堆栈段起始单元的地址,即堆栈段首址;(SS)*16+(SP初值)决定了堆栈段最后一个单元的地址,即栈底;(SS)*16+(SP现值)决定了堆栈段当前可用单元的地址,即栈顶。 显然,堆栈首址并不是栈低。一般来说,在堆栈所在的内存区内,栈底为高地址端。堆栈初始化后,未压入数据时,栈底与栈顶是重合的。当堆栈压入数据后,栈顶地址总是小于栈底地址,位于低地址端。 问答题 若CS为0A000H,试说明现行代码段可寻址物理空间的范围。 答: 因为8086系统中可寻址的最大逻辑段长度为64K,所以当CS为0A000H,即段基址为CS*16=0A0000H时,现行代码段可寻址物理空间的范围为:0A0000H ~ 0AFFFFH。 问答题 若(CS)=5200H时,物理转移地址为5B230H,则当CS的内容被设定为7800H,物理转移地址应为多少? 答:按题目条件可知该转移地址距CS所指代码段的段基址的偏移量为9230H (即= 5B230H-52000H),因此若(CS)=7800H,则物理转移地址应为:78000H +9230H=81230H。 问答题 假定VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处。 (1)ADD VAR1,VAR2 (2)SUB AL,VAR1 (3)JMP LAB[CX] (4)JNZ VAR1 (5) MOV [1000H],100 (6)SHL AL, 4 解答:(1)两个操作数中至少有一个为寄存器; (2)AL为字节,VAR1为字变量,不匹配; (3)[ ]中不能用CX,LAB为标号,非变量; (4)转向地址应为标号,不能是变量; (5)目的操作数的类型不确定; (6)SHL指令中,当所移位数超过1时,必须用CL或CX来取代所移位数。 对于下面的符号定义,指出下列指令的错误。 A1 DB ? A2 DB 10 K1 EQU 1024 (1)MOV K1,AX (2)MOV A1,AX (3)CMP A1,A2 (4)K1 EQU 2048 解答:(1)K1为常量,不能用MOV指令赋值; (2)A1为字节,AX为字变量,不匹配; (3)A1未定义,无法做比较指令;内存与内存操作不允许 (4)K1重新赋值前,必须用PURGE释放。 有两个16位的字31DAH、5E7FH,它们在8086系统存储器中的地址为00130H和00135H,试画出它们的存储器示意图。 请设置一个数
文档评论(0)