微机原理、汇编语言与接口技术

上传人:飞*** 文档编号:35969838 上传时间:2018-03-23 格式:DOC 页数:81 大小:723KB
返回 下载 相关 举报
微机原理、汇编语言与接口技术_第1页
第1页 / 共81页
微机原理、汇编语言与接口技术_第2页
第2页 / 共81页
微机原理、汇编语言与接口技术_第3页
第3页 / 共81页
微机原理、汇编语言与接口技术_第4页
第4页 / 共81页
微机原理、汇编语言与接口技术_第5页
第5页 / 共81页
点击查看更多>>
资源描述

《微机原理、汇编语言与接口技术》由会员分享,可在线阅读,更多相关《微机原理、汇编语言与接口技术(81页珍藏版)》请在金锄头文库上搜索。

1、第第 1 1 章章 绪论绪论习题与参考答案(部分)习题与参考答案(部分)1. 把下列二进制数转换成十进制数、十六进制数及 BCD 码形式。(1)10110010B =(2)01011101.101B =解:、1、10110010B = 178D = B2H = (0001 0111 1000)BCD、2、01011101.101B = 93.625D = 5D.AH= (1001 0011.0110 0010 0101)BCD2. 把下列十进制数转换成二进制数。(1)100D =(2)1000D =(3)67.21D =解:(1) 100D = 01100100B(2) 1000D = 111

2、1101000B(3) 67.21D = 1000011.0011B3. 把下列十六进制数转换成十进制数、二进制数。(1)2B5H =(2)4CD.A5H =解: 、1、2B5H = 693D = 0010 1011 0101B、2、4CD.A5H = 1229.6445D = 0100 1100 1101.1010 0101 B4. 计算下列各式。(1)A7H+B8H =(2)E4H-A6H =解:、1、A7H+B8H = 15FH、2、E4H-A6H = 3EH5. 写出下列十进制数的原码、反码和补码。(1) +89(2) -37解:(1) +89 原码、反码和补码为: 01011001B

3、(2) -37 原码 = 10100101 B -37 反码 = 11011010 B-37 补码 = 11011011 B6求下列用二进制补码表示的十进制数(1)(01001101)补 = (2)(10110101)补 =解:(1)(01001101)补 = 77D(2)(10110101)补 = -75D 7请用 8 位二进制数写出下列字符带奇校验的 ASCII 码。(1)C: 1000011(2)O: 1001111(3)M: 1001101(4)P: 1010000解:(1)C:0 1000011 (2)O: 0 1001111(3)M:1 1001101 (4)P: 1 101000

4、08请用 8 位二进制数写出下列字符带偶校验的 ASCII 码。(1)+:0101011 (2)=: 0111101(3)#:0100011 (4): 0111110解:(1)+:0 0101011 (2)=: 1 0111101(3)#:1 0100011 (4): 1 01111109叙述CPU 中 PC 的作用。解:PC 是 CPU 中的程序计数器,其作用是提供要执行指令的地址。第第 2 2 章章 微处理器的结构微处理器的结构习题与参考答案习题与参考答案1. 80868088 CPU 由哪两大部分组成?请分别叙述它们的功能。解:8086/8088 CPU 均由两个独立的逻辑单元组成,一个

5、称为总 线接口单元 BIU(Bus Interface Unit),另一个称为执行单元 EU(Execution Unit)。 总线接口单元 BIU 取指令时,从存储器指定地址取出指令送入指 令队列排队;执行指令时,根据 EU 命令对指定存储器单元或 I/O 端口存取数据。 执行单元 EU 任务是执行指令,进行全部算术逻辑运算、完全偏 移地址的计算,向总线接口单元 BIU 提供指令执行结果的数据和 偏移地址,并对通用寄存器和标志寄存器进行管理。2. 80868088 与传统的计算机相比在执行指令方面有什么不同?这样的设计思想有什么优点?解:总线接口部分和执行部分是分开的,每当 EU 执行一条指

6、令时,造成指令队列空出 2 个或空出一个指令字节时 ,BIU 马上从内存中取出下面一条或几条指令,以添满他的指令队列。这样,一般情况下,CPU 在执行完一条指令后,便可马上执行下一条指令,不像以往 8 位 CPU 那样,执行完一条指令后,需等待下一条指令。即 EU 从指令队列中取指令、执行指令和 BIU 补充指令队列的工作是同时进行的。这样大大提高了 CPU 利用率,降低了系统都对存储器速度的要求。 3. 状态标志和控制标志有何不同?80868088 的状态标志和控制标志分别有哪些?解:8086/8088 CPU 设立了一个两字节的标志寄存器,共九个标志。其中标志位 O、S、Z、A、P、C 是

7、反映前一次涉及 ALU 操作结果的状态标志,D、I、T 是控制 CPU 操作特征的控制标志。4. 80868088 CPU 寻址存储器时,什么是物理地址?逻辑地址?它们之间有何关系?解:8086/8088 系统中每个存储单元都有一个物理地址,物理地址就是存储单元的实际地址编码。在 CPU 与存贮器之间进行任何信息交换时,需利用物理地址来查找所需要的访问的存储单元。逻辑地址由段地址和偏移地址两部分组成。逻辑地址的表示格式为:段地址:偏移地址。知道了逻辑地址,可以求出它对应的物理地址:物理地址=段地址10H+偏移地址。5. 段寄存器 CS1200H,指令指针寄存器 IPFF00H,此时,指令的物理

8、地址为多少?指向这一物理地址的 CS 值和 IP 值是唯一的吗?解:根据:物理地址=段地址10H+偏移地址,指令的物理地址为 21F00H。指向这一物理地址的 CS 值和 IP 值不唯一。6. 8086 CPU 中信号和 A0信号是通过怎样的组合解决存储器和BHE外设端口的读写的?这种组合决定了 8086 系统中存储器偶地址体及奇地址体之间应该用什么信号区分?怎样区分?解:若存取一个字节的数据,总是用一个总线周期来完成该操作;若存取一个字,则依该字是规则字还是不规则字需用一个或两个总线周期来完成。对规则字,只用一个总线周期来完成 16 位数据的传送,而对于非规则字则用相邻两个总线周期来完成该字

9、的存储操作,先取其奇地址字节(即数据的低位字节),然后存取偶地址字节。在组成存储系统时,总是偶地址单元的数据通过AD0AD7传送,而奇地址单元的数据通过 AD8AD15传送,即通过总线高字节传送。信号和 A0信号控制存储器读写见下表:BHE操作BHEA0 使用的数据总线存取规则字 00AD15AD0传送偶地址的一个字节10AD7AD0传送奇地址的一个字节01AD15AD801AD15AD8(第一个总线周期)存取非规则字 10AD7AD0(第二个总线周期)11为非法码第第 3 章章 80x86 指令系统指令系统习题与参考答案习题与参考答案1、指出下列指令中操作数的寻址方式(8086 系统)。 (

10、1) MOVAX,100(2) MOVAX,100 (3) MOVDL,BP+SI(4) MOVBX,CX (5) MOVDX,SI(6) MOV1234HBX,DS (7) MOVDI+5678H,AL(8) MOV12BPDI, BH (9) POPCX(10)MOVAX,BX+SI+10解:目的操作数源操作数(1) MOVAX,100寄存器寻址立即数寻址(2) MOVAX,100寄存器寻址直接寻址(3) MOVDL,BP+SI寄存器寻址基址变址寻址(4) MOVBX,寄存器间接寻 寄存器寻址CX址(5) MOVDX,SI寄存器寻址寄存器间接寻址(6) MOV1234HBX,DS寄存器相对

11、寻址寄存器寻址(7) MOVDI+5678H,AL寄存器相对寻址寄存器寻址(8) MOV12BPDI,BH相对基址变址寻址寄存器寻址(9) POPCX寄存器寻址隐含为堆栈(10)MOVAX,BX+SI+10寄存器寻址相对基址变址寻址2、指出下列指令中操作数的寻址方式(80386 系统)。 (1) MOVEBX+12H,AX(2) MOVEBP+EDI*2, EBX (3) MOVEBX*4,BX(4) MOV EDX,EAX+ESI*8-12H解:目的操作数源操作数(1)寄存器相对寻址寄存器寻址(2)基址比例变址寻址寄存器寻址(3)比例变址寻址寄存器寻址(4)寄存器寻址相对基址比例变址寻址3、

12、指出以下指令中,哪些指令是非法的,并说明为什么(8086 系 统)。 (1) PUSH1234H(2) MOVCS,AX (3) IN AX, 300(4) MOVAX,DX+12 (5) MOVBX,BX(6) MOVDS,1000H (7) XCHGAL,AL(8) MOVAL,100H (9) MOVDX,AL(10)LEABL,BX+5 (11)LEADX,BX(12)MOV1000H, 12H (13)ADDAX,DS(14)SUB0100H, BYTE PTR 0001 (15)SHLBL,2(16)SHRCL,CL(17)MULAL,BL(18)INT400解:(1)非法,808

13、6 系统不允许 PUSH 指令的操作数为立即数;(2)非法,MOV 指令中 CS 不能作为目的操作数;(3)非法,端口号大于 0FFH;(4)非法,DX 不能出现在中括号内;(5)合法;(6)非法,不能把立即数赋给段寄存器;(7)合法;(8)非法,源操作数大于 0FFH,不能赋给 8 位寄存器 AL;(9)非法,源操作数是 8 位寄存器,目的操作数却是 16 位寄存器,不匹配;(10)非法,LEA 指令得到的是 16 位偏移量,但目的操作数是8 位寄存器;(11)非法,LEA 指令的源操作数只能是存储器操作数;(12)非法,指令存在歧义,无法确定传送的是字节还是字;(13)非法,段寄存器不能参

14、与算术运算;(14)非法,源和目的寄存器不能同为存储器操作数;(15)非法,在 8086 系统中,移位次数大于 1 时需要将移位次数存放到 CL 中;(16)合法;(17)非法,在 8086 系统中 MUL 指令没有双操作数的用法;(18)非法,中断类型号大于 0FFH。4、指出以下指令中,哪些指令是非法的,并说明为什么(80386 系统)。 (1) MOVAX,12EBXSI*16(2) RCREAX,10 (3) PUSH5678H(4) POP1000H (5) MOVEAX+EAX,EAX(6) MOV AL,ESP+ESP*2 (7) MOVBL,AX+12(8) IMULAL,BL

15、,12解:(1)非法,比例因子只能是 1、2、4、8,不能是 16;(2)合法;(3)合法;(4)非法,POP 指令的目的操作数不能是立即数;(5)合法;(6)非法,ESP 只能作为基址寄存器,不能作为变址寄存器;(7)非法,在 386 系统中 AX 不能作为基址寄存器,也不能作为变址寄存器;(8)合法。5、假设(AX)=1234H,(BX)=5678H,(SP)=1000H,指出执行下面的 程序段后,各相关寄存器及堆栈段中的内容。 PUSHAX ;(AX)=?,(BX)=?,(SP)=?,栈顶字节SP=?, 栈 顶第二字节SP+1=? PUSHBX ;(AX)=?,(BX)=?,(SP)=?

16、,栈顶字节SP=?, 栈 顶第二字节SP+1=? POPAX ;(AX)=?,(BX)=?,(SP)=?,栈顶字节SP=?, 栈顶第二字节SP+1=?解:(AX)=1234H,(BX)=5678H,(SP)=0FFEH,栈顶字节SP=34H,栈顶第二字节SP+1=12H(AX)=1234H,(BX)=5678H,(SP)=0FFCH,栈顶字节SP=78H,栈顶第二字节SP+1=56H(AX)=5678H,(BX)=5678H,(SP)=0FFEH,栈顶字节SP=34H,栈顶第二字节SP+1=12H6、假设 A、B、C、D、X、Y 为字节变量,AA、BB、YY 为字变量,试 利用算术运算指令编写程序段,完成以下各算术运算题。 (1)计算 YYA+B*C,其中 A、

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号