微型计算机原理课后习题及答案(第二版)

上传人:liy****000 文档编号:115658615 上传时间:2019-11-14 格式:PDF 页数:15 大小:488.23KB
返回 下载 相关 举报
微型计算机原理课后习题及答案(第二版)_第1页
第1页 / 共15页
微型计算机原理课后习题及答案(第二版)_第2页
第2页 / 共15页
微型计算机原理课后习题及答案(第二版)_第3页
第3页 / 共15页
微型计算机原理课后习题及答案(第二版)_第4页
第4页 / 共15页
微型计算机原理课后习题及答案(第二版)_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《微型计算机原理课后习题及答案(第二版)》由会员分享,可在线阅读,更多相关《微型计算机原理课后习题及答案(第二版)(15页珍藏版)》请在金锄头文库上搜索。

1、部分习题答案 第二章 计算机中的数值和编码 1、 将十进制数转换为二进制和十六进制 (1) 129.751000 0001.11B81.CH (2) 218.81251101 1010.1101BDA.DH (3) 15.6251111.101BF.AH (4) 47.1562510 1111.0010 1B2F.28 H 2、 将下列二进制数转换为十进制和十六进制 (1) 111010 B=58 =3A H (2) 1011 1100.111B= 188.875= BC.E H (3) 0.1101 1B=0.84375 =0.D8H (4) 11110.01 B=30.25 =1E.4H

2、3、完成下列二进制数的加减法运算 (1) 1001.11100.011110.00 (2) 1101010110.100101100001.001101110101.0110 (3) 001111011011101111111000 (4) 01011101.0110101101.1011101111.1011 4、完成下列十六进制数的加减法运算 (1) 745CH56DFHD14B H (2) ABF.8HEF6.AH9C28.E H (3) 12AB.F73CD.051678 .FC H (4) 6F01HEFD8H7F29 H 5、计算下列表达式的值 (1) 128.8125101101

3、01.1011B1F.2H101010101.1010B (2) 287.6810101010.11H8E.EH103.CEH (3) 18.91010.1101B12.6H1011.100136.525 6、选取字长 n 为 8 位和 16 位两种情况,求下列十进制数的补码。 (1) X33 的补码: 1101 1111, 1111111111011111 (2) Y33 的补码: 0010 0001, 0000 0000 0010 0001 (3) Z128 的补码:1000 0000, 1111 1111 1000 0000 (4) N127 的补码:0111 1111, 0000 00

4、00 0111 1111 (5) A65 的补码: 1011 1111, 1111 1111 1011 1111 (6) B65 的补码: 0100 0001, 0000 0000 0100 0001 (7) C96 的补码: 1010 0000, 1111 1111 1010 0000 (8) D96 的补码: 0110 0000, 0000 0000 0110 0000 7、写出下列用补码表示的二进制数的真值 (1) X补1000 0000 0000 0000 H X1000 0000 0000 0000 H32768 (2) Y补0000 0001 0000 0001 H Y0000 0

5、001 0000 0001 H257 (3) Z补1111 1110 1010 0101 H Z0000 0001 0101 1011 H347 (4) A补0000 0010 0101 0111 H A0000 0010 0101 0111 H599 8、设机器字长为 8 位,最高位为符号位,试对下列格式进行二进制补码运算,并判断结果是否溢出。 (1) 438 43补00101011B,8补00001000B 43补8补00101011B00001000B00110011B33H 00101011B 00001000B 00110011B CS0,CD0,OFCSCD000 无溢出 (1)

6、438 33H (无溢出) (2) 527 D3 H (无溢出) (3) 6090 96 H (溢出) (4) 728 40 H (无溢出) (5) 33(37) 0BA H (无溢出) (6) 90(70) 60 H (溢出) (7) 9(7) FE H (无溢出) (8) 6090 E2 H (无溢出) 9、 设有变量 x11101111B,y11001001B,z01110010B,v01011010B,试计算 x+y?,x+z?, y+z?,z+v?,请问: 若为无符号数,计算结果是否正确? 若为带符号补码数,计算结果是 否溢出? x+y = 11101111B11001001B101

7、11000B1B8 H 1110 1111 B 1100 1001B 1011 1000B 若为无符号数 若为带符号补码数 CF=1 不正确 CF=1,DF1 OF0 不溢出 x+y = 0B8 H x+z = 61 H y+z = 3B H z+v = 0CC H 不正确 不正确 不正确 正确 不溢出 不溢出 不溢出 溢出 第三章 80X86 微处理器 1简述 80868088CPU 中 BIU 和 EU 的作用,并说明其并行工作过程。 答: (1) BIU 的作用: 计算 20 位的物理地址, 并负责完成 CPU 与存储器或 I/O 端口之间的数据传送。 (2) EU 的作用:执行指令,并

8、为 BIU 提供所需的有效地址。 (3) 并行工作过程:当 EU 从指令队列中取出指令执行时,BIU 将从内存中取出指令补充到指令 队列中。这样就实现了取指和执行指令的并行工作。 280868088CPU 内部有哪些寄存器?其主要作用是什么? 答:80868088CPU 内部共有 14 个寄存器,可分为 4 类:数据寄存器 4 个,地址寄存器 4 个,段寄 存器 4 个和控制寄存器 2 个。其主要作用是: (1) 数据寄存器:一般用来存放数据,但它们各自都有自己的特定用途。 AX(Accumulator)称为累加器。用该寄存器存放运算结果可使指令简化,提高指令的执行速度。 此外,所有的 IO

9、指令都使用该寄存器与外设端口交换信息。 BX(Base)称为基址寄存器。用来存放操作数在内存中数据段内的偏移地址, CX(Counter)称为计数器。在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化, 有利于提高程序的运行速度。 DX(Data)称为数据寄存器。在寄存器间接寻址的 IO 指令中存放 IO 端口地址;在做双字长 乘除法运算时,DX 与 AX 一起存放一个双字长操作数,其中 DX 存放高 16 位数。 (2) 地址寄存器:一般用来存放段内的偏移地址。 SP(Stack Pointer)称为堆栈指针寄存器。在使用堆栈操作指令(PUSH 或 POP)对堆栈进行操作时, 每执行

10、一次进栈或出栈操作,系统会自动将 SP 的内容减 2 或加 2,以使其始终指向栈顶。 BP(Base Pointer)称为基址寄存器。作为通用寄存器,它可以用来存放数据,但更经常更重要的 用途是存放操作数在堆栈段内的偏移地址。 SI(Source Index)称为源变址寄存器。SI 存放源串在数据段内的偏移地址。 DI(Destination Index)称为目的变址寄存器。DI 存放目的串在附加数据段内的偏移地址。 (3) 段寄存器:用于存放段地址 CS(Code Segment)称为代码段寄存器,用来存储程序当前使用的代码段的段地址。 CS 的内容 左移 4 位再加上指令指针寄存器 IP

11、的内容就是下一条要读取的指令在存储器中的物理地址。 DS(Data Segment)称为数据段寄存器, 用来存放程序当前使用的数据段的段地址。 DS 的内容左 移 4 位再加上按指令中存储器寻址方式给出的偏移地址即得到对数据段指定单元进行读写的物理地 址。 SS(Stack Segment)称为堆栈段寄存器,用来存放程序当前所使用的堆栈段的段地址。堆栈是存 储器中开辟的按“先进后出”原则组织的一个特殊存储区,主要用于调用子程序或执行中断服务程 序时保护断点和现场。 ES(Extra Segment)称为附加数据段寄存器,用来存放程序当前使用的附加数据段的段地址。附 加数据段用来存放字符串操作时

12、的目的字符串。 (4) 控制寄存器 IP(Instmcdon Pointer)称为指令指针寄存器,用来存放下一条要读取的指令在代码段内的偏移地 址。用户程序不能直接访问 IP。 FLAGS 称为标志寄存器,它是一个 16 位的寄存器,但只用了其中 9 位,这 9 位包括(个状态标 志位和 3 个控制标志位。它用来反映算术运算和逻辑运算结果的一些特征,或用来控制 CPU 的某种 操作。 380868088CPU 中有哪些寄存器可用来指示操作数在存储器中某段内的偏移地址? 答:可用来指示段内偏移地址的寄存器共有 6 个:IP、SP、BP、BX、SI、DI 480868088CPU 中标志寄存器 F

13、LAGS 有哪些标志位?它们的含义和作用如何? 答:标志寄存器中的标志共有 9 个,分为两类:状态标志 6 个和控制标志 3 个。其作用是: (1) 状态标志:用来反映算术和逻辑运算结果的一些特征。 CF(Carry Flag)进位标志位。当进行加减运算时,若最高位发生进位或借位,则 CF 为 1,否 则为 0。该标志位通常用于判断无符号数运算结果是否超出了计算机所能表示的无符号数的范围。 PF(Parity Flag)奇偶标志位。当指令执行结果的低 8 位中含有偶数个 1 时,PF 为 1,否则为 0。 AF(Auxiliary Flag)辅助进位标志位。当执行一条加法或减法运算指令时,若结

14、果的低字节的 低 4 位向高 4 位有进位或借位,则 AF 为 1,否则为 0。 ZF(Zero Flag)零标志位。若当前的运算结果为 0,则 ZF 为 1,否则为 00 SF(Sign Flag)符号标志位。当运算结果的最高位为 1 时,SF=1,否则为 00 OF(Overflow Flag)溢出标志位。当运算结果超出了带符号数所能表示的数值范围,即溢出时, OF=1,否则为 0。该标志位通常用来判断带符号数运算结果是否溢出 o (2) 控制标志位:用来控制 CPU 的操作,由程序设置或清除。它们是: TF(TrapFlag)跟踪(陷阱)标志位。它是为测试程序的方便而设置的。若将 TF

15、置 1,8086 8088CPU 处于单步工作方式,否则,将正常执行程序。 IP(Interrupt Flag)中断允许标志位。它是用来控制可屏蔽中断的控制标志位。若用 STI 指令将 IF 置 1,表示允许 CPU 接受外部从 INTR 引脚上发来的可屏蔽中断请求信号;若用 CLI 指令将 IP 清 0,则禁止 CPU 接受可屏蔽中断请求信号。IF 的状态对非屏蔽中断及内部中断没有影响。 DF(DirectionFlag)方向标志位。若用 STD 将 DF 置 1,串操作按减地址方式进行,也就是说, 从高地址开始,每操作一次地址自动递减;若用 CLD 将 DF 清 0,则串操作按增地址方式进行,即 每操作一次地址自动递增。 580868088CPU 的地址总线有多少位?其寻址范围是多少? 答:8086/8088 地址总线有 20 根,寻址范围 1MB 6什么叫指令队列?80868088CPU 中指令队列有什么作用?其长度分别是多少? 答: (1) 指令队列:采用“先进先出”原则,按顺序存放预执行指令的缓冲器称为指令队列。 (2) 指令队列的作用:存放 EU 将要执行的指令,使 CPU 的取指和执行指令

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

当前位置:首页 > 资格认证/考试 > 其它考试类文档

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