北京科技大学微机原理第三四章作业答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理第三、四章作业

1. 设当前(SS)=0C000H, (SP)=2000H, (AX)=2355X, (BX)=2122H, (CX)=8788H,则当前栈顶的物理地址是 0E000H ?若连续执行PUSH AX, PUSH BX, POP CX这3条指令后,堆栈内容发生变化? (SP)-2,AX存入堆栈;再是(SP)-2,BX存入堆栈;最后取栈顶的2122H存到CX中(SP)+2 。AX, BX, CX中的内容是什么?(AX)=2355H;(BX)=2122H;(CX)=8788H;

2. 假设(SS)=20A0H, (SP)=0032H, 将(CS)=0A5BH, (IP)=0012H, (AX)=0FF42H, (SI)=537AH, (BL)=5CH 依次压入堆栈保存。要求:(1) 画出堆栈数据存放示意图;(2) 写出入栈完毕后SS和SP的值。

堆栈数据存放示意图:

其中(BL)=5CH入栈时错误,可改为( BX)=005CH入栈,(SS)=20A0H;(SP)=0028H

3. 指出下列指令的错误原因。

(1) MOV AL, SI;源操作数和目的操作数长度不一致

(2) MOV [1001H], [1000H];存储器不可传送给存储器

(3) MOV DS, 2000H ;立即数不可传送给段寄存器

(4) MOV CS, AX;CS不能作为目的操作数

(5) PUSH 5000H;入栈的源操作数不能使立即数

(6) POP DL;出栈的应该是字操作数

(7) IN AX, 1234H;1234H必须放在DX中才行

(8) XCHG BX, 0F000H;XCHG的源操作数不能是立即数,可以是寄存器操作数和存储器操作数

4. 用一条指令将BX清零,请写出三种方法。

(1)MOV BX,00H; (2)SUB BX,BX; (3)AND BX,00H; (4)XOR BX,BX

5. 分析下列指令序列完成什么功能。

MOV CL, 4;将4附给CL

SHL DX, CL;将DX数据算数左移4位

MOV BL, AH;将AH的值附给BL

SHL AX, CL;将AX的值算术左移4位

SHR BL, CL;将BL的值算术右移4位

OR DL, BL;将DL和BL的值进行“或”运算

6. 10个8位带符号数保存在数据段首地址为NUMBERS区域里,设计一段完整的汇编语言源程序,求这10个带符号数中的最小值,并将其存入变量MIN中。要求画出程序框图,10个带符号数可自行定义。

相关文档
最新文档