当前位置:文档之家› 新编16,36位微型计算机原理及应用第五版李继灿答案

新编16,36位微型计算机原理及应用第五版李继灿答案

新编16,36位微型计算机原理及应用第五版李继灿答案
新编16,36位微型计算机原理及应用第五版李继灿答案

微机原理[第三版]课后练习答案解析

1 思考与练习题 一、选择题 1.计算机硬件中最核心的部件是( )。C A.运算器 B.主存储器 C.CPU D.输入/输出设备 2.微机的性能主要取决于( )。 A (B——计算机数据处理能力的一个重要指标) A.CPU B.主存储器 C.硬盘 D.显示器 3.计算机中带符号数的表示通常采用( )。C A.原码 B.反码 C.补码 D.BCD码 4.采用补码表示的8位二进制数真值范围是( )。C A.-127~+127 B.-1 27~+128 C.-128~+127 D.-128~+128 5.大写字母“B”的ASCII码是( )。B A.41H B.42H C.61H D.62H 6.某数在计算机中用压缩BCD码表示为10010011,其真值为( )。C A.10010011B B.93H C.93 D.147 二、填空题 1.微处理器是指_CPU_;微型计算机以_CPU_为核心,配置_内存和I/O接口_构成;其特点是_(1)功能强 (2)可靠性高 (3)价格低 (4)适应性强 (5)体积小 (6)维护方便_。P8 P5 2.主存容量是指_RAM和ROM总和_;它是衡量微型计算机_计算机数据处理_能力的一个重要指标;构成主存的器件通常采用_DRAM和PROM半导体器件_。P5 P9 3.系统总线是_CPU与其他部件之间传送数据、地址和控制信息_的公共通道;根据传送内容的不同可分成_数据、地址、控制_3种总线。P9 4.计算机中的数据可分为_数值型和非数值型_两类,前者的作用是_表示数值大小,进行算术运算等处理操作_;后者的作用是_表示字符编码,在计算机中描述某种特定的信息_。P12 5.机器数是指_数及其符号在机器中加以表示的数值化_;机器数的表示应考虑_机器数的范围、机器数的符号、机器数中小数点位置_3个因素。P15 P16 6.ASCII码可以表示_128_种字符,其中起控制作用的称为_功能码_;供书写程序和描述命令使用的称为_信息码_。P18 P19 三、判断题 1.计算机中带符号数采用补码表示的目的是为了简化机器数的运算。( )√ 2.计算机中数据的表示范围不受计算机字长的限制。( )× 3.计算机地址总线的宽度决定了内存容量的大小。( )√ 4.计算机键盘输入的各类符号在计算机内部均表示为ASCII码。( )× (键盘与计算机通信采用ASCII码) 2 思考与练习题 一、选择题 1.在EU中起数据加工与处理作用的功能部件是( )。A A.ALU B.数据暂存器 C.数据寄存器 D.EU控制电路 2.以下不属于BIU中的功能部件是( )。 B A.地址加法器 B.地址寄存器 C.段寄存器 D.指令队列缓冲器

(完整版)微机原理课后习题参考答案

第一章 2、完成下列数制之间的转换。 (1)01011100B=92D (3)135D=10000111B (5)10110010B=262Q=B2H 3、组合型BCD码和非组合型BCD码有什么区别?写出十进制数254的组合型BCD数和非组合型数。 答:组合型BCD码用高四位和低四位分别对应十进制数的个位和十位,其表示范围是0~99;非组合型BCD码用一个字节的低四位表示十进制数,高四位则任意取值,表示范围为0~9。 组合型:254=(001001010100)BCD 非组合型:254=(00000010 00000101 00000100)BCD 7、计算机为什么采用补码形式存储数据?当计算机的字长n=16,补码的数据表示范围是多少? 答:在补码运算过程中,符号位参加运算,简化了加减法规则,且能使减法运算转化为加法运算,可以简化机器的运算器电路。+32767~ -32768。 9、设计算机字长n=8,求下列各式的[X+Y]补和[X-Y]补,并验证计算结果是否正确。 (1)X=18,Y=89 [X+Y]补=00010010+01011001=01101011B=107D 正确 [X-Y]补=10111001B=00010010+10100111=(-71D)补正确 (2)X=-23,Y=-11 [X+Y]补=11101001+11110101=11011110B=(-34D)补正确[X-Y]补=11101001+00001011=11110100B=(-12D)补正确 (3)X=18,Y=-15 [X+Y]补=00010010+11110001=00000011B=(3D)补正确 [X-Y]补=00010010+00001111=00100001B=(33D)补正确 (4)X=-18,Y=120 [X+Y]补=11101110+01111000=01100110B=(102D)补正确[X-Y]补=11101110+10001000=01110110B=(123D)补由于X-Y=-138 超出了机器数范围,因此出错了。 13、微型计算机的主要性能指标有哪些? 答:CPU字长、存储器容量、运算速度、CPU内核和IO工作电压、制造工艺、扩展能力、软件配置。 第二章 2、8086标志寄存器包含哪些标志位?试说明各标志位的作用。 答:进位标志:CF;奇偶校验:PF;辅助进位:AF;零标志:ZF;符号标志:SF;溢出标志:OF。 5、逻辑地址与物理地址有什么区别?如何将逻辑地址转换为物理地址? 答:物理地址是访问存储器的实际地址,一个存储单元对应唯一的一个物理地址。逻辑地址是对应逻辑段内的一种地址表示形式,它由段基址和段内偏移地址两部分组成,通常表示为段基址:偏移地址。 物理地址=段基址*10H+偏移地址。 6、写出下列逻辑地址的段基址、偏移地址和物理地址。 (1)2314H:0035H (2)1FD0H:000AH 答:(1)段基址:2314H;偏移地址:0035H;物理地址:23175H。 (2)段基址:1FD0H;偏移地址:000AH;物理地址:1FD0AH。 8、设(CS)=2025H,(IP)=0100H,则当前将要执行指令的物理地址是多少? 答:物理地址=(CS)*10H+(IP)=20350H 9、设一个16字的数据区,它的起始地址为70A0H:DDF6H(段基址:偏移地址),求这个数据区的首字单元和末字单元的物理地址。

微机原理考试试题及答案分析

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(A )控制线来区分是存储器访问,还是I/O访问,当CPU执行IN AL,DX 指令时,该信号线为(B )电平。 (1) A. M/ IO B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为(B )。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为( B )。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是(D )。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址(C )开始的4个存贮单元内。 A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是( C )。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(C)时钟周期(T状态)组成,在T1状态,CPU往总线上发(B )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个 ⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(A),最大模式的特点是(C )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ IN 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( B )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( A )位被置位 A. OF B AF C PF D CF 11.8086 系统中内存储器地址空间为1M,而在进行I/O读写是,有效的地址线是( B) A . 高16位 B. 低16位 C. 高8位 D. 低8位 12.8086 CPU中段寄存器用来存放( C ) A. 存储器的物理地址 B. 存储器的逻辑地址 C. 存储器的段基值 D. 存储器的起始地址 13.8259A可编程中断控制器的中断服务寄存器ISR用于( A ) A.记忆正在处理中的中断 B. 存放从外设来的中断请求信号 C.允许向CPU发中断请求 D.禁止向CPU发中断请求 14.8253 可编程定时/计数器的计数范围是( C ) A. 0-255 B. 1-256 C. 0-65535 D. 1-65536

微机原理习题3及答案解析

习题三 5.4 指出下列指令的错误是什么? (1) MOV BL ,AX (2) MOV [BX],[BP+SI] (3) MOV CS ,AX (4) MOV DS ,1000H (5) MOV BX ,[SI][DI] (6) MOV [2000H],10 解: (1)类型属性不匹配; (2)两操作数都是存储单元; (3)把CS 用作目的操作数 (4)立即数送段寄存器; (5)源操作数中两个均为变址寄存器; (6)类型属性不明确 5.5 设当前数据段寄存器的内容为1B00H ,在数据段偏移地址为2000H 开始的单元内,含有一个内容为0FF10H 和8000H 的指针,它们是一个16位变量的偏移地址和段地址,试写出把该变量装入AX 的指令序列,并画出内存图。 解: 内存图: 指令序列: MOV BX ,[2000H] MOV AX ,[2002H] MOV DS ,AX MOV AX ,[BX] 或者: LDS BX ,[2000H] MOV AX ,[BX] 5.7 要求从85号端口读入一个字节数据,然后到数据段首地址为1000H 的表格中换取相应的数据码,再将该数据输出至3000号端口,试编写指令序列。 解: IN AL ,85 MOV BX ,1000H XLAT MOV DX ,3000 OUT DX ,AL

5.9 根据以下要求编写相应的指令: (1)将AX寄存器和BX寄存器的内容相加,结果存入BX寄存器。 (2)用增量指令使采用BX寄存器间接寻址的单元中的字节内容加1。 (3)用BX寄存器和位移量300H的寄存器相对寻址方式把存储器中的一个字和(CX)相加,结果送回该存储单元中。 (4)用寄存器BX和SI的基址变址寻址方式,把存储器中的一个字节与AH 寄存器的内容相加,并保存在AH中。 (5)采用合适的指令,将1000H单元中的字与1200H单元中的字相加,结果存入1000H单元。 解:(1) ADD BX,AX (2) INC BYTE PTR[BX] (3) ADD [BX+300H],CX (4) ADD AH,[BX][SI] (5) MOV BX,1000H MOV AX,[1200H] ADD [BX],AX 5.10 设以下表达式中的变量名均为16位带符号数所在单元的地址,编写指令序列,完成下列运算(出发运算的余数舍去): (W×Y)/(A+70)→X (A-B×C)/(X-Y)→Z 解:(1) MOV AX,W IMUL Y MOV BX,A ADD BX,70 IDIV BX MOV X,AX (2) MOV AX,B IMUL C MOV BX,AX MOV CX,DX MOV AX,A CWD SUB AX,BX SBB DX,CX MOV BX,X SUB BX,Y IDIV BX MOV Z,AX

微机原理课后答案

1.2 课后练习题 一、填空题 1.将二进制数1011011.1转换为十六进制数为__5B.8H_____。 2.将十进制数199转换为二进制数为____ 11000111____B。 3.BCD码表示的数,加减时逢__10____进一,ASCII码用来表示数值时,是一种非压缩的BCD 码。 4.十进制数36.875转换成二进制是___100100.111____________。 5.以_微型计算机____为主体,配上系统软件和外设之后,就构成了__微型计算机系统____。6.十进制数98.45转换成二进制为__1100010.0111_B、八进制__142.3463________Q、十六进制__62.7333________H。(精确到小数点后4位) 二、选择题 1.堆栈的工作方式是__B_________。 A)先进先出B)后进先出C)随机读写D)只能读出不能写入 2.八位定点补码整数的范围是____D_________。 A)-128-+128 B)-127-+127 C)-127-+128 D)-128-+127 3.字长为16位的数可表示有符号数的范围是___B___。 A)-32767-+32768 B)-32768-+32767 C)0-65535 D)-32768-+32768 三、简答题 1.微型计算机系统的基本组成? 微型计算机,系统软件,应用软件,输入输出设备 2.简述冯.诺依曼型计算机基本思想? ●将计算过程描述为由许多条指令按一定顺序组成的程序,并放入存储器保存 ●指令按其在存储器中存放的顺序执行; ●由控制器控制整个程序和数据的存取以及程序的执行; ●以运算器为核心,所有的执行都经过运算器。 3.什么是微型计算机? 微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4.什么是溢出? 运算结果超出了计算机所能表示的范围。 2.2 一、填空题 1. 8086/8088的基本总线周期由___4____个时钟周期组成,若CPU主频为10MHz,则一个时钟周期的时间为___0.1μs_____。 2. 在8086CPU的时序中,为满足慢速外围芯片的需要,CPU采样___READY_________信号,若未准备好,插入___TW__________时钟周期。 3. 8086系统总线形成时,须要用_____ALE__________信号锁定地址信号。 4. 对于8086微处理器,可屏蔽中断请求输入信号加在_____INTR__________引脚。

微机原理答案解析

习题与思考题(参考答案) 第一章 1.6 将下列十进制数转换成二进制数。 256D =10000000B 237.135D=11101101.0010001B 12.58D=1100.100101B 0.374D=0.0101B 1.7 写出下列二进制数对应的十进制数、八进制数、十六进制数。 1101110B=110D=156Q=6EH 111011000B=472D=730Q=1D8H 1101111.1001B=111.5625D=157.44Q=6F.9H 1.8 填空: 10101.001B=(21.125)D=(25.1)Q=(15.2)H 2DE.6H=(1011011110.011)B=(1336.3)Q=(734.375)D 1.9 试写出下列用补码表示的二进制数的真值。 00111010 →00111010→+5810000000→-128 10000101→11111011→-123 11111110→10000010→-2 01111110→01111110→+126 1.10 已知X=35,Y=-89,试用补码运算法则,求出:X+Y=? [X]补=00100011 [Y]原=11011001 [Y]补=10100111 [X+Y]补=[X]补+[Y]补=00100011+10100111=11001010 X+Y=10110110B=-54 1.11 已知[X]补=10011011,[X+Y]补=10111001,试求: ①[X-Y]补=?(有溢出,结果出错。) 因为[X+Y]补=[X]补+[Y]补=10111001 所以[Y]补=[X+Y]补-[X]补=00011110 [-Y]补=11100010 [X-Y]补=[X]补+[-Y]补=10011011+11100010=01111101 ②X、Y的真值各为多少? [X]原=11100101,X的真值为-101;[Y]原=00011110,Y的真值为30 第二章 2.3 8086CPU的ALE信号的功能是什么? 答:ALE(Address Latch Enable)是8086CPU提供给地址锁存器的控制信号,在任何一个总线周期的T1状态,ALE输出有效电平(正脉冲),以表示当前地址/数据、地址/状态复用总线上输出的是地址信息,锁存器可利用它的下降沿将地址锁存起来。ALE信号不能浮空。 2.4 8086CPU内部的寄存器由哪几种类型组成?各自的作用是什么? 答:8086CPU内部有14个16位寄存器,可以分为以下三组:分别是通用寄存器组,段寄存器组,控制寄存器。 通用寄存器组可以分为两组:数据寄存器和地址指针与变址寄存器。 数据寄存器主要用来保存算术、逻辑运算的操作数、中间结果和地址。 地址指针与变址寄存器主要用于存放或指示操作数的偏移地址。 段寄存器组:8086/8088CPU内部设置了4个16位段寄存器,它们分别是代码段寄存器CS、数据段寄存器DS、堆栈段寄存器SS、附加段寄存器ES,由它们给出相应逻辑段的首地址,称为“段基址”。 控制寄存器:含指令指针IP及标志位寄存器FR。 IP用来存放将要执行的下一条指令在现行代码段中的偏移地址。

微机原理课后习题答案

第二章 1.8086CPU由哪两部分组成?它们的主要功能是什么? 8086CPU由总线接口部件BIU和指令执行部件EU组成,BIU和EU的操作是并行的。 总线接口部件BIU的功能:地址形成、取指令、指令排队、读/写操作数和总线控制。所有与外部的操作由其完成。 指令执行部件EU的功能:指令译码,执行指令。 2.8086CPU中有哪些寄存器?各有什么用途? 8086CPU的寄存器有通用寄存器组、指针和变址寄存器、段寄存器、指令指针寄存器及标志位寄存器PSW。 4个16位通用寄存器,它们分别是AX,BX,CX,DX,用以存放16位数据或地址。也可分为8个8位寄存器来使用,低8位是AL、BL、CL、DL,高8位是AH、BH、CH、DH,只能存放8位数据,不能存放地址。 指针和变址寄存器存放的内容是某一段内地址偏移量,用来形成操作数地址,主要在堆栈操作和变址运算中使用。 段寄存器给出相应逻辑段的首地址,称为“段基址”。段基址与段内偏移地址结合形成20位物理地址。 指令指针寄存器用来存放将要执行的下一条指令在现行代码中的偏移地址。 16位标志寄存器PSW用来存放运算结果的特征,常用作后续条件转移指令的转移控制条件。 5.要完成下述运算或控制,用什么标志位判断?其值是什么? ⑴比较两数是否相等? 将两数相减,当全零标志位ZF=1时,说明两数相等,当ZF=0时,两数不等。 ⑵两数运算后结果是正数还是负数? 用符号标志位SF来判断,SF=1,为负数;SF=0,为正数。 ⑶两数相加后是否溢出? 用溢出标志位来判断,OF=1,产生溢出;OF=0,没有溢出。 ⑷采用偶校验方式。判定是否要补“1”? 用奇偶校验标志位判断,有偶数个“1”时,PF=1,不需要补“1”;有奇数个“1”时,PF=0,需要补“1”。 (5)两数相减后比较大小? ●ZF=1时,说明两数是相等的; ●ZF=0时: 无符号数时,CF=0,被减数大;CF=1,被减数小。 带符号数时,SF=OF=0或SF=OF=1,被减数大;SF=1,OF=0或SF=0,OF1,被减数小。 (6)中断信号能否允许? 用中断标志位来判断,IF=1,允许CPU响应可屏蔽中断;IF=0,不响应。 6.8086系统中存储器采用什么结构?用什么信号来选中存储体? 8086存储器采用分体式结构:偶地址存储体和奇地址存储体,各为512k。 用A0和BHE来选择存储体。当A0=0时,访问偶地址存储体;当BHE=0时,访问奇地址存储体;当A0=0,BHE=0时,访问两个存储体。 9.实模式下,段寄存器装入如下数据,写出每段的起始和结束地址 a)1000H 10000H~1FFFFH b)1234H 12340H~2233FH c)2300H 23000H~32FFFH d)E000H E0000H~EFFFFH e)AB00H AB000H~BAFFFH

微机原理答案 (1)

第1章微型计算机系统概述 1.1 学习指导 简要介绍了微型计算机系统的硬件组成和基本工作方法,以及微型计算机的软件和操作系统。要求了解计算机的硬件组成结构、Intel微处理器的主要成员、系统总线的概念。理解微型计算机的基本操作过程以及指令、程序等基本概念。理解操作系统的重要作用,掌握DOS基本命令的使用。 1.2 习题 1. 简述微型计算机系统的组成。 2. 简述计算机软件的分类及操作系统的作用。 3. CPU是什么?写出Intel微处理器的家族成员。 4. 写出10条以上常用的DOS操作命令。

第2章 计算机中的数制和码制 2.1 学习指导 介绍计算机中数制和码制的基础知识,主要包括各种进制数的表示法及相互转换、二进制数的运算、有符号二进制数的表示方法及运算时的溢出问题、实数的二进制表示法、BCD 编码和ASCII 字符代码等内容。要求重点掌握各种进制数的表示及相互转换、有符号数的补码表示及补码运算。 2.2 补充知识 1. 任意进制数的表示 任意一个数N 可表示成p 进制数: () ∑??==1n m i i i p p k N 其中,数N 表示成m 位小数和n 位整数。 1,,1,0?=p k i L 2. 数制之间的变换 十进制到任意进制(设为p 进制)的变换规则:(1)整数部分:N 除以p 取余数;(2)纯小数部分:N 乘以p 取整数。 任意进制(设为p 进制)到十进制的变换规则:按权展开。 3. 有符号数的补码表示 对于任意一个有符号数N,在机器字长能表示的范围内,可分两步得到补码表示:(1)取N 的绝对值,并表示成二进制数N1;(2)如果N 为负数,则对N1中的每一位(包括符号位)取反,再在最低位加1。这样得到的N1就是有符号数N 的补码表示。 4. 常用字符的ASCII 码 数字0~9:30H~39H;字母A~Z:41H~5AH;字母a~z:61H~7AH;空格:20H;回车(CR):0DH;换行(LF):0AH;换码(ESC):1BH。 2.3 习 题 1. 将下列十进制数转换成二进制数: (1)49;(2)73.8125;(3)79.75; 2. 将二进制数变换成十六进制数: (1)101101B ;(2)1101001011B ;(3)1111111111111101B ; (4)100000010101B ;(5)1111111B ;(6)10000000001B 3. 将十六进制数变换成二进制数和十进制数: (1)FAH ;(2)5BH ;(3)78A1H ;(4)FFFFH 4. 将下列十进制数转换成十六进制数: (1)39;(2)299.34375;(3)54.5625 5. 将下列二进制数转换成十进制数:

微机原理课后习题答案解析

第1章进制及码元 1、进制转换 129= 81H= 10000001B=201Q 298= 12AH= 100101010B=452Q 1000= 3E8H= 1111101000B= 1750Q 5DH= 1011101 B= 135 Q= 93 D 3E8H= 1111101000 B= 1750Q= 1000 D; 357Q=11101111 B= 0EF H= 239 D 2、进制计算 10010110 2FE3 F7,-119 FFF7,-32759 4 7 3、数据表示围: 一个字节的无符号数表示围为0~255,有符号数补码表示围为-l28—+127。 两个字节的无符号数表示围为0~65535,有符号数补码表示围为—32768~+32767。 N位二进制数的无符号数表示围为0~(2N-1),有符号数(补码)表示围为-2N-1~(2N-1-1). 4、35H代表的ASCII字符为'5',代表十六进制数时等价的十进制值为53 ,代表压缩8421BCD码等价的十进制值为35 ,代表非压缩8421BCD码等价的十进制值为5。 5、FFH代表无符号数时等价的十进制值为255 ,代表补码有符号数时等价的十进制值为一1 ,代表反码有符号数时等价的十进制值为一0 ,代表原码

有符号数时等价的十进制值为一l27。 6、—20的8位二进制补码为 ECH ,原码为 94H ,反码为 EBH 。 158的16位二进制补码为009EH,原码为009EH ,反码为 009EH 。 7、英文字符一般在计算机占用(1)个字节,每个字节的最高位一定为 0 ,全角英文字符在计算机占用 2个字节,一个汉字在计算机占用 2 个字节,每个字节最高位为 1 。 8、设阶码用8位补码表示,尾数部分用16位补码表示,则—(1/32+1/128+1/512)的尾数部分及阶码分别为多少?

微机原理习题2参考答案

习题2参考答案 2.1 8086 CPU共有哪些16位寄存器?其中哪些16位寄存器可分为二个8位寄存器来使用? 参考答案:8086 CPU共有AX、BX、CX、DX、SI、DI、SP、BP、IP、FLAGS、CS、DS、ES、SS共14个16位的寄存器。其中AX、BX、CX、DX可分为二个8位寄存器来使用 2.2 简述8086 CPU各通用寄存器的主要功能? 参考答案:8086 CPU包含AX、BX、CX、DX、SI、DI、SP、BP共8个通用寄存器。其中AX主要用在字的乘、除法,输入/输出指令中;BX主要在寄存器间接寻址和XLAT 指令中作基址寄存器使用;CX主要在串操作指令和LOOP指令中作计数器使用;DX主要在字的乘除法指令和输入/输出指令中使用;SI主要在字符串操作指令中作源变址寄存器使用;DI主要在字符串操作指令中作目的变址寄存器使用;SP主要在堆栈操作中作堆栈指针使用;BP主要在寄存器间接寻址中作基址指针使用。 2.3 8086 CPU的标志寄存器有几个状态标志位?几个控制标志位?它们各自的含义和作用是什么?在Debug环境下,对应的用什么符号来表示之? 参考答案:8086 CPU的标志寄存器有6个状态标志位,有3个控制标志位。 其中CF进位标志位主要用来反映运算结果是否产生进位或借位,如果运算结果的最高位向前产生了一个进位(加法)或借位(减法),则其值为1,否则其值为0;PF奇偶标志位用于反映运算结果中低8位含有“1”的个数的奇偶性,如果“1”的个数为偶数,则PF 的值为1,否则为0;AF辅助进位标志位表示加法或减法运算结果中D3位向D4位产生进位或借位的情况,有进位(借位)时AF=1;无进位(借位)时AF=0;ZF零标志位用来反映运算结果是否为0,如果运算结果为0,则其值为1,否则其值为0;SF用来反映运算结果的符号位,当运算结果为负数时,SF的值为1,否则其值为0;OF溢出标志位用于反映带符号数运算所得结果是否溢出,如果运算结果超过当前运算位数所能表示的范围,则称为溢出,OF的值被置为1,否则,OF的值被清为0。 IF中断允许标志位用来决定CPU是否响应CPU外部的可屏蔽中断发出的中断请求,当IF=1时,CPU响应;当IF=0时,CPU不响应。DF方向标志位用来控制串操作指令中地址指针的变化方向。在串操作指令中,当DF=0时,地址指针为自动增量,即由低地址向高地址变化;当DF=1时,地址指针自动减量,即由高地址向低地址变化。TF追踪标志位被置为1时,CPU进入单步执行方式,即每执行一条指令,产生一个单步中断请求。 在Debug环境下,对应的表示符号如下表 2.4 默认情况下,哪些寄存器可用于读取堆栈段的数据? 参考答案:SP和BP 2.5有效地址就是偏移地址的说法正确吗? 参考答案:正确 2.6假设用以下寄存器组合来访问存储单元,试求出它们所访问单元的物理地址。 (1)DS=1000H和DI=F000H (2)SS=C300H和BP=3200H (3)DS=A000H 和BX=1000H 参考答案:(1)物理地址=1000H*16+ F000H= 1F000H

微机原理和接口技术习题答案解析3

第3章 8086CPU指令系统 1.写出完成下列要求的变量定义语句: (1)在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530; (2)在变量var2中保存字符串:’BYTE’, ’word’, ’WORD’; (3)在缓冲区buf1中留出100个字节的存储空间; (4)在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次; (5)在变量var3中保存缓冲区buf1的长度; (6)在变量pointer中保存变量var1和缓冲区buf1的偏移地址。 解:var1 DW 4512H,4512,-1,100/3,10H,65530 var2 DB ’BYTE’,’word’,’WORD’ buf1 DB 100 DUP(?) buf2 DB 7 DUP(5 DUP(55H),10 DUP(240)) var3 DB LENGTH buf1 pointer DW var1,buf1 (或者pointer DW OFFSET var1,OFFSET buf1) 2.设变量var1的逻辑地址为0100:0000,画出下列语句定义的变量的存储分配图: var1 DB 12,-12,20/6,4 DUP(0,55H) var2 DB ‘Assemble’ var3 DW ‘AB’, ‘cd’, ‘E’ var4 DW var2 var5 DD var2 解:

3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因(设 VAR1, VAR2为字变量, L1为标号): (1)MOV SI,100 (2)MOV BX,VAR1[SI] (3)MOV AX, [BX] (4)MOV AL, [DX] (5)MOV BP, AL (6)MOV VAR1, VAR2 (7)MOV CS, AX (8)MOV DS, 0100H (9)MOV [BX][SI], 1 (10)MOV AX, VAR1+VAR2 (11)ADD AX, LENGTH VAR1 (12)OR BL, TYPE VAR2 (13)SUB [DI], 78H (14)MOVS VAR1, VAR2 (15)PUSH 100H (16)POP CS (17)XCHG AX, ES (18)MOV DS, CS (19)JMP L1+5 (20)DIV AX, 10 (21)SHL BL, 2 (22)MOV AL, 15+23 (23)MUL CX (24)XCHG CL, [SI] (25)ADC CS:[0100], AH (26)SBB VAR1-5,154 解:(1)MOV SI,100 正确。源:立即数寻址,目的:寄存器寻址(2)MOV BX,VAR1[SI] 正确。源:寄存器相对寻址,目的:寄存器寻址 (3)MOV AX,[BX] 正确。源:寄存器间接寻址,目的:寄存器寻址 (4)MOV AL,[DX] 错误。寄存器间接寻址时,DX, AX, CX不能作地址寄存器(5)MOV BP,AL 错误。操作数类型不一致 (6)MOV VAR1,VAR2 错误。两存储单元之间不能用MOV指令传送数据

微机原理作业及参考答案

第一章计算机基础(P32) 1-3写出下列机器数的真值: (1)01101110 (2) (3)01011001 (4) 答案: (1)+110 (2)-13(原码) -114(反码)-115(补码) (3)+89 (4)-78(原码)-49(反码)-50(补码) 1-4写出下列二进制数的原码、反码和补码(设字长为8位): (1)+010111 (2)+101011 (3)-101000 (4)-111111 答案: (1)[x]原=00010111 [x]反= 00010111 [x]补= 00010111 (2)[x]原=00101011 [x]反= 00101011 [x]补= 00101011 (3)[x]原= [x]反= [x]补= (4)[x]原= [x]反= [x]补= 1-5 当下列各二进制数分别代表原码,反码,和补码时,其等效的十进制数值为多少? (1)00001110 表示原码14,反码14,表示补码为14 (2)表示原码-127,反码-0,表示补码为-1 (3)表示原码-0,反码-127,表示补码为-128 (4)表示原码-1,反码-126,表示补码为-127 1-6 已知x1=+0010100,y1=+0100001,x2=-0010100,y2=-0100001,试计算下列各式。(字长8位) (1)[x1+y1]补(2)[x1-y2]补 (3)[x2-y2]补(4)[x2+y2]补 (5)[x1+2*y2]补(6)[x2+y2/8]补 答案: (1)[x1+y1]补=[00010100+00100001]补=[00110101]补=00110101 (2)[x1-y2]补=[x1]补+[-y2]补=00010100+00100001=00110101 (3)[x2-y2]补=[x2]补+[-y2]补=+00100001=00001101 (4)[x2+y2]补=[x2]补+[y2]补=+= (5)[x1+2*y2]补=[x1]补+[2*y2]补=00010100+= (6)[x2+y2/8]补=+[y2/8]补=+= 1-7 用补码来完成下列运算,并判断有无溢出产生(字长为8位): (1)85+60 (2)-85+60 (3)85-60 (4)-85-60 答案: (1)[x]补+[y]补=01010101+00111100= = -111,有溢出

微机原理习题解答

微机原理习题解答 Document number【SA80SAB-SAA9SYT-SAATC-SA6UT-SA18】

第1章习题和解答 15. 将下列十进制数分别转化为二进制数、十六进制数和BCD码。 (1)=(0000 0001) 2=(0F.51) 16 =(0001 0010) BCD (2)=(0001 0100 1000) 2= 16 =(0011 0010 0110) BCD (3)=(0100 1111) 2=(44.4F) 16 =(0110 0001) BCD (4)=(1101 0000) 2= 16 =(0010 0001 0010 0110) BCD 16. 将下列二进制数分别转化为十进制数和十六进制数。 (1)= 181=0B5H (2)= 203=0CBH (3)= = H (4) = = 17. 将下列十六进制数分别转化为二进制数、十进制数。 (1)FAH=1111 1010B=250 (2)12B8H=0001 0010 1011 1000B=4792 (3)5A=0101 1010 0010B=

(4)=0010 1101 = 18. 若X=-107,Y=+74按8位二进制可写出:。[X]补=95H ,[Y]补=4AH , [X +Y]补=0DFH,[X-Y]补=4BH。 19. X=34AH,Y=8CH。问:有三位和两位十六进制数X和Y, (1)若X,Y是纯数(无符号数),则:X+Y=3D6H;X-Y=2BEH。 (2)若X,Y是有符号数,则:X+Y=2D6 H;X-Y=3BEH。 20. 已知X=85,Y=76(均为十进制数),求[-85]补,[-76]补。并利用补码的加、减法运算规则计算[X-Y]补,[-X+Y]补,[-X-Y]补。结果的各机器数及其真值请用 十六进制表示,并由运算过程中的标志位OF判断结果是否溢出。 答:[X]补=[85]补=55H,[Y]补=[76]补=4CH , [-X]补=[-85]补=0ABH, [-Y]补=[-76]补=0B4H [X-Y]补=[X]补+[-Y]补=55H+B4H=09H, OF=0 [-X+Y]补=[-X]补+[Y]补=ABH+4CH=0F7H, OF=0 [-X-Y]补=[-X]补+[-Y]补=ABH+B4H=5FH, OF=1 21. (1) 设[X]补=B,则[1/2X]补=1/2[X]补=B (2) 设[X]补=B,则[-1/4X]补=[1/4[X]补]补=[]补=00001011B

微机原理试题及答案 (1)

1 一、选择题(20分,在每小题的4个备选答案中选出一个正确的答案编号填写在该题空白处,每题2分) 1.指令MOV DX,[BX]的寻址方式是 D 。 (A)立即寻址(B)直接寻址(C)寄存器寻址(D)寄存器间接寻址2.若AL的内容为3FH,执行SHL AL,1指令后,AL的内容为 A 。 (A)7EH (B)1FH (C)9FH (D)7FH 解析:shl al ,1 即目的操作数各位左移一次,移动一次,相当于将目的操作数乘以2。3fh=63 63*2=126 126=7eh 故选A 3.属于在工作中需定时刷新的存储器的芯片是 B 。 (A)SRAM (B)DRAM (C)EEPROM (D)EPROM 4.某EPROM芯片上有19条地址线A 0~A 18 ,它的容量为 C 。 (A)128K (B)256K (C)512K (D)1024K 5.8086/8088CPU的SP寄存器是多少位的寄存器 B 。 (A)8位(B)16位(C)24位(D)32位 6.在STOSB指令执行的时候,隐含着寄存器的内容作为操作数的偏移地址, 该寄存器是 D 。 (A)SP (B)BX (C)SI (D)DI 解析:stos数据串存储指令功能:将累加器al或ah中的一个字或字节,传送到附加段中以di为目标指针的目的串中,同时修改di,以指向串中的下一个单元。 7.8255工作在方式0时,下面哪种说法不正确 C 。 (A)A口输入无锁存能力(B)A、B口输出有锁存能力 (C)C口输入有锁存能力(D)A、B、C三个口输出均有锁存能力 解析:对于方式0,规定输出信号可以被锁存,输入不能锁存 8.采用DMA方式来实现输入输出是因为它 A 。 (A)速度最快(B)CPU可不参与操作(C)实现起来比较容易(D)能对突发事件做出实时响应 9.工作在最小模式下,8086/8088CPU芯片中,将地址信号锁存的信号是 C 。 (A)DT/R (B)DEN (C)ALE (D)AEN 10.在LOOP指令执行的时候,隐含着对计数器减1的操作,该计数器是用寄存 器 C 。 (A)AX (B)BX (C)CX (D)DX 解析:loop:循环指令。指令执行前必须事先见重复次数放在cx寄存器中,每执行一次loop指令,cx自动减1。 二、填空题(每小题2分,共10分) 1.两个无符号数相等,该两数相减后ZF标志= 1 。解析:zf: 全零标志位。本次运算结果为0时,zf=1,否则zf=0。 2.执行LODSB后,SI的内容较该指令执行前增加1,说明DF= 0 。 3.DMA控制器8237共有 4 个相互独立的DMA通道。

微机原理答案

第8 章中断系统 习题参考答案 8-1.8086 系统中,用IRET 指令结束中断服务程序后,标志IF 的值是____A____。 8-2.执行8086 的IRET 中断返回指令后,将从堆栈中弹出__C__字节数据,存入相应的寄存器。8-3.8086 的中断向量表中存放的是_B_。 8-4.8086 中断向量表的围是RAM 地址的__A__。 8-5 采用中断方式为外部设备服务的优点包括__C_。 8-6 为了可以实现中断嵌套,在8086系统的中断服务程序中,需要写一条__D_。 8-7.在具有2 片8259A 级联的中断系统中,两片8259A 都设置为非自动结束中断,以下说法中正确的是____C____。 8-8.以下和中断有关的操作中,必须由CPU 自动完成的是____A____。 8-9.中断系统可以实现中断嵌套,其最主要的原因是____C___。 8-10.在8086 系统中,一个中断类型号为0DBH 的中断服务子程序位于从8100H:1234H开始的存中,在中断向量表中相应的中断向量所在的起始物理地址为____A___。 8-11.在8086 系统中,一个中断类型号为0DBH 的中断服务子程序入口地址是8100H:1234H,这个地址在中断向量表中连续 4 个存储单元存放的容依次为_____C____。 8-12.4 片8259A 构成的级联中断控制系统中,最多可以直接连接的外部中断源的数目是__D__。8-13.8086 的以下各种中断中,需要硬件提供中断类型号的只有____D__。 8-14.对于8086 的软件中断,以下说法中正确的是_____D____。 8-15.什么是中断向量?什么是中断向量表?8086的中断向量表存放在存储器的哪个区域?为什么8086 中断向量表的大小是1024 个字节? 答:中断向量就是中断服务程序的入口地址。中断向量表存放中断服务程序的入口地址,或者存放跳转到中断服务程序入口的转移指令。8086 的中断向量表位于RAM 区的00000H~003FFH。因为8086 支持256 个中断,每个中断服务程序的入口地址是4 个字节,共需要1024字节。 8-16.现在有10 个外中断源要申请中断,都用软件查询来进行优先级排队,此时需要为这些中断源准备几个中断服务程序?为什么? 答:只需要一个中断服务程序。10 个中断源通过一个或门向CPU 申请中断。当有几个中断源同时申请时,在中断服务程序中进行排队查询。再转移到各自的服务程序段。并不需要为每个中断源准备一个服务程序。 8-17.如果8259A设置为非自动结束中断方式。但是,用户在编写中断服务程序时,没有向8259A 发送中断结束命令EOI。这样的做法会产生什么不好的后果? 答:其结果是8259 部的中断服务寄存器中的相应的登记不会撤销。也就不会允许后续的同级中断的申请。而实际上CPU 的服务已经结束,应该可以允许中断的申请。

微机原理习题答案

第二章 8086奔腾系列微处理器习题解答 1.试说明8086/8088CPU中有哪些寄存器?各有哪些用途? 答:寄存器组有(1)数据寄存器,含AX、BX、CX、DX四个通用寄存器,用来暂时存放计算过程中所遇到的操作数,结果和其它信息。(2)指针及变址寄存器,含SP、BP、SI、DI四个十六位寄存器,它们可以像寄存器一样在运算过程中存放操作数只能以字为单位使用。还用来在段内寻址时提供偏移地址。(3)段寄存器,含CS、DS、SS、ES,用来专门存放段地址。(4)控制寄存器,包括IP和PSW 两个16为寄存器。IP是指令指针寄存器,用来存放代码段中的偏移地址。PSW为程序状态字寄存器,由条件码标志和控制标志构成。条件码标志用来纪录程序运行结果的状态信息。包括OF、SF、ZF、CF、AF、PF。控制标志位有三个寄存器DF、IF、TF组成。 2.是说明8086/8088CPU中标志位寄存器中各标志位的意义? 答:OF溢出标志,在运算过程中,如操作数超出了机器能表示的范围则置1,否则置0。SF符号标志,运算结果为负时置1,否则置0。 ZF零标志,运算结果为0置1,否则置0 。 CF进位标志,记录运算是最高有效位产生的进位。 AF辅助进位标志,记录第三位的进位情况。 PF奇偶标志位,用来为机器中传送信息时可能产生的出错情况提供检验条件,当结果操作数中的1的个数为偶时置1。 DF方向标志位,在串处理指令中控制处理信息的方向。当DF=1时,每次操作后变址寄存器减量,这样就使串处理从高地址向低地址方向处理。IF中断标志,当IF=1时,允许中断,否则间断中断。TF陷阱标志,用于单步操作方式,当TF 为1时,每条指令执行完后产生陷阱,由系统控制计算机。当TF为0时,CPU 正常工作不产生陷阱。 3.哪些操作只能隐含使用某个段寄存器,而不能用其它段寄存器代替?哪些操作出隐含使用某个段寄存器外,还可以使用其它段寄存器? 答:计算程序的地址隐含使用CS,正在执行的程序隐含使用SS,而数据的地址隐含使用ES和DS。 4.8086/8088系列违纪在存储器中寻找存储单元时,逻辑地址由哪两个部分组成的? 答:由段地址和偏移地址两部分构成。 5.设IBM PC微机内存中某个单元的物理地址是12345H,试完成下列不同的逻辑地址表示: (1)1234H:___H (2)____H:0345H 答:(1)1234H:05H (2) 1200H:0345H 6.假设某程序执行过程中,(SS)=0950H,(SP)=64H,试问该用户程序的堆栈底部物理地址是多少? 答:(SS)*10H+(SP)=09564H 7.设堆栈段寄存器(SS)=0E4BH,程序中设堆栈长度为200H个字节。试计算出堆栈底部字单元物理地址,堆栈指针SP初始值(即堆栈中没有数据时)和SP初始值指向的物理地址。 答:物理地址为:3E4B0H, SP的初始值为200H,指向的物理地址为:3E6B1H.。8.设某用户程序(SS)=0925H,SP=30H,(AX)=1234H,(DX)=5678H,问堆栈的地

相关主题
文本预览
相关文档 最新文档