微机原理习题答案3
微机原理第三章习题答案

“微处理器系统原理与嵌入式系统设计”第三章习题解答3.1什么是冯·诺伊曼计算机结构?其运行的基本原理如何?冯.诺依曼计算机由运算器、控制器、存储器、输入设备和输出设备构成,采用二进制表示信息,以存储器为中心,按存储程序原理工作。
存储程序原理指编好的程序首先放入存储器,开始工作后,由控制器自动、高速依次从存储器中取出指令并执行。
3.2. 微处理器的体系结构可以分为几种?试分别说明各种体系结构的优缺点。
3.3 高级编程语言、汇编语言以及机器语言之间有哪些不同?机器语言是直接用二进制代码表达的计算机语言。
指令用“0”和“1”组成,并分成若干段,各段的编码表示不同的含义。
机器语言面向硬件,是唯一可以由硬件直接执行的语言。
汇编语言采用符号代替机器语言中的二进制码:用助记符(Mnemonic)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。
汇编语言与机器语言一一对应,因此不具有移植性,但更易于读写和理解。
汇编语言源程序需要汇编成机器语言才能交给硬件执行。
高级编程语言语法和结构更类似普通英文,且由于远离对硬件的直接操作,因此移植性较好。
高级语言源程序需要编译(或解释)成机器语言才能交给硬件执行。
3.5 什么是计算功能指令、数据传输指令以及控制流程指令?计算功能指令:对数据进行处理完成算术运算或逻辑运算等的指令。
数据传输指令:负责把数据、地址或立即数传送到寄存器、I/O端口或存储单元中,或者反方向传送的指令。
控制流程指令:用来控制程序执行流程的指令,有测试、转移、跳转等子类。
3.6 解释跳转、分支、调用以及中断所需进行的操作。
跳转:根据“跳转”指令指计算目的地址,修改程序指针。
分支:根据“分支”指令判断执行条件,计算跳转地址,修改程序指针。
调用:保存断点,根据“调用”指令计算子程序入口地址,修改程序指针,执行完毕后恢复断点。
中断:保护断点及现场,查找中断向量表以确定中断程序入口地址,修改程序指针,执行完毕后恢复现场及断点。
微机原理课后习题参考答案

微机原理课后习题参考答案第1部分微型计算机基础知识1.1 微处理器、微型计算机和微型计算机系统三者之间有什么不同?【解】微处理器:指计算机内部对数据进行处理并对处理过程进行控制的部件,伴随着大规模集成电路技术的迅速发展,芯片集成密度越来越高,CPU可以集成在一个半导体芯片上,这种具有中央处理器功能的大规模集成电路器件,被统称为“微处理器”。
微型计算机:简称“微型机”、“微机”,也称“微电脑”。
由大规模集成电路组成的、体积较小的电子计算机。
由微处理机(核心)、存储片、输入和输出片、系统总线等组成。
特点是体积小、灵活性大、价格便宜、使用方便。
微型计算机系统:简称“微机系统”。
由微型计算机、显示器、输入输出设备、电源及控制面板等组成的计算机系统。
配有操作系统、高级语言和多种工具性软件等。
1.2 CPU在内部结构上由哪几部分组成?CPU应该具备哪些主要功能?【解】CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。
1.3 微型计算机采用总线结构有什么优点?【解】①简化了系统结构,便于系统设计制造;②大大减少了连线数目,便于布线,减小体积,提高系统的可靠性;③便于接口设计,所有与总线连接的设备均采用类似的接口;④便于系统的扩充、更新与灵活配置,易于实现系统的模块化;⑤便于设备的软件设计,所有接口的软件就是对不同的口地址进行操作;⑥便于故障诊断和维修,同时也降低了成本。
总线的逻辑电路有些是三态的,即输出电平有三种状态:逻辑“0”,逻辑“1”和“高阻”态。
1.4计算机总线有哪些,分别是什么?【解】总线按其信号线上传输的信息性质可分为三组:①数据总线,一般情况下是双向总线;②地址总线,单向总线,是微处理器或其他主设备发出的地址信号线;③ 控制总线,微处理器与存储器或接口等之间1.5 数据总线和地址总线在结构上有什么不同之处?如果一个系统的数据和地址合用一套总线或者合用部分总线,那么要靠什么来区分地址和数据?【解】数据总线(DB)为双向结构,数据在CPU与存储器或I/O 接口之间的传送是双向的,(数据既可以读也可以写),其宽度通常与微处理器的字长相同。
微机原理第三章课后习题解答

3.1已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024H,SI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H ,(1E4F6H)=091DH。
在以上给出的环境下,试问下列指令段之行后的结果如何?(1)MOV CL,[BX+20H][SI];物理地址=DS*10H+BX+SI+20H=091D0H+0024H+0012H+0020H=09226H(09226H)=00F6H,(09226H)=F6H, (09227H)=00H执行后:CL=F6H(2)MOV [BP][DI], CX物理地址=SS*10H+BP+DI=1E4A0H +0024H+0032H=1E4F6HCX=5678H 执行后:(1E4F6H) = 5678H(3)LEA BX, [BX+20H][SI];BX=BX+20H+SI=0056HMOV AX, [BX+2];物理地址=DS*10H+BX+2=091D0H +0058H=09228H (09228H)=1E40H 执行后:AX=1E40H(4)LDS SI, [BX][DI];物理地址=DS*10H+BX+DI=091D0H +0056H=09226H (09226H)=00F6H (09228H)=1E40H执行后:BX=(09226H)=00F6HDS=(09228H)=1E40HMOV [SI],BX物理地址=DS*10H+SI =1E400H +0012H=1E412HBX=0024H, 执行后:(1E412H)=0024H (5)XCHG CX,[BX+32H]物理地址=DS*10H+BX+32H =091D0H +0056H =09226H (09226H)=00F6H , CX=5678H执行后:(09226H)=5678H , CX=00F6HXCHG [BX+20H][SI], AX物理地址=DS*10H+BX+20H+SI =091D0H +0056H =09226H (09226H)=5678H , AX=1234H执行后:(09226H)=1234H , CX=5678H3.2设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=0E7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H。
微机原理习题解答(供参考)

微机原理习题解答(供参考)第1章习题和解答15. 将下列⼗进制数分别转化为⼆进制数、⼗六进制数和BCD码。
(1)15.32=(0000 1111.0101 0001)2=(0F.51)16=(0001 0101.0011 0010)BCD(2)325.16=(0001 0100 0101.0010 1000)2=(145.28)16=(0011 0010 0101.0001 0110)BCD(3)68.31=(0100 0100.0100 1111)2=(44.4F)16=(0110 1000.0011 0001)BCD(4)214.126=(1101 0110.0010 0000)2=(0D6.20)16=(0010 0001 0100.0001 0010 0110)BCD16. 将下列⼆进制数分别转化为⼗进制数和⼗六进制数。
(1)10110101= 181=0B5H(2)11001011= 203=0CBH(3)10101.1001= 21.5625=15.9 H(4) 101101.0101= 45.3125=2D.5H17. 将下列⼗六进制数分别转化为⼆进制数、⼗进制数。
(1)FAH=1111 1010B=250(2)12B8H=0001 0010 1011 1000B=4792(3)5A8.62H=0101 1010 1000.0110 0010B=1448.3828125(4)2DF.2H=0010 1101 1111.0010B=735.12518. 若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。
微机原理习题答案3

《微型计算机原理》习题3(P117)参考答案(部分题号与教材有错位,请注意)3.1 为什么要研究8086/8088微处理器及其系统?这比直接研究32位微处理器及其系统有何优缺点?解:尽管8086/8088后续的80286、80386、80486以及Pentium系列CPU结构和功能已发生很大变化,但从基本概念与结构以及指令格式上来讲,他们仍然是经典的8086/8088CPU的延续与提升。
3.2 8086 CPU有多少根数据线和地址线?它能寻址多少内存地址单元和I/O端口?8088CPU又有多少根数据线和地址线?为什么要设计8088CPU?解:8086 CPU有16根数据线和20根地址线,可寻址1MB存储单元和64KB的I/O端口。
8088 CPU 有16位内部数据线和8条外部数据总线,20根地址线。
8088 CPU 是8086 CPU的向下兼容版,这样设计主要为了与INTEL原有的8位外围接口芯片直接兼容。
3.3 8086 CPU内部按功能可分为哪两大部分?他们各自的主要功能是什么?解:从功能上讲,8086可分为两个部分,即总线接口单元(bus interface unit,BIU)和执行单元(execution unit ,EU)。
总线接口单元(BIU)的功能是负责CPU与存储器或I/O设备之间的数据传送。
EU的功能只是负责执行指令;执行的指令从BIU的指令队列缓冲器中取得,执行指令的结果或执行指令所需要的数据,都由EU向BIU发出请求,再由BIU经总线控制电路对存储器或外设存取。
3.4 8086 CPU内部的总线接口单元BIU由哪些功能部件组成?他们的基本操作原理是什么?解:BIU内有4个16位的段地址寄存器CS、DS、SS和ES,16位指令指针IP,6字节指令队列缓冲器,20位地址加法器和总线控制电路。
基本操作原理是BIU要从内存取指令送到指令队列缓冲器;CPU执行指令时,总线接口单元要配合执行单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。
微机原理第三章习题答案

习题3答案1. 指出下列指令的错误原因。
(1) AND AX, DL ;类型不匹配(2) ADD CS, DX ;CS不能作为目的操作数(3) MOV AX, IP ;IP不能作为指令的操作数(4) MOV [BP][SI], [SI] ;两个操作数不能同时为内存操作数(5) SUB [BP][SI], ES:DX ;段超越前缀只能用在内存操作数之前(6) XCHG AL, [SI][DI] ;没有[SI][DI]这种操作数形式(7) JGE AX ;条件转移指令的操作数只能是标号(8) PUSH DL ;对堆栈不能进行字节操作2. 用一条指令将BX清0。
(请给出3种方法)方法1:MOV BX, 0方法2:SUB BX, BX方法3:AND BX, 0 ;将BX和0做与,可以将BX清零方法4:XOR BX, BX3. 写出实现下列功能的指令序列。
(1) 判断AX的值,若AX等于0,则转到标号LABEL处。
(请写出3种方法)方法1:CMP AX, 0JZ LABEL ; 如果ZF = 0,说明AX为0,因为CMP指令是做减法,但是不写回结果; 因此指令执行后AX内容不会受到破坏方法2:TEST AX, 0FFHJZ LABEL ; 如果ZF = 0,说明AX为0,TEST指令做与运算,可是不写回结果,只影响标志位。
; 和0与清零,和1与不变,所以和FFH做与的结果是AX本身,但是此时标志位已; 经改变了,所以可以利用标志位来判断,但是AX内容却没有受到任何破坏方法3:AND AX, 0FFH ;这个方法的原理和方法2其实是完全一致的JZ LABEL(2) 将AL的高4位与低4位分别放入AH与AL的低4位,并将AH与AL的高4位清0。
MOV AH, ALAND AL, 0FH ; AL高4位通过与清零,而低4位保持不变MOV CL, 4SHR AH, CL ; 这两条指令通过逻辑右移将AH的高4位清零,因为SHR在右移后,高位补零(3) 若AX和BX中的数恰好1个是奇数、1个是偶数,则将奇数放入AX,偶数放入BX;否则,AX和BX不变。
微机原理与接口技术习题答案3

第3章8086CPU指令系统1.写出完成下列要求的变量定义语句:(1)在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530;(2)在变量var2中保存字符串:’BYTE’,’word’,’WOR’D;(3)在缓冲区buf1中留出100个字节的存储空间;(4)在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次;(5)在变量var3中保存缓冲区buf1的长度;(6)在变量pointer中保存变量var1和缓冲区buf1的偏移地址。
解:var1DW4512H,4512,-1,100/3,10H,65530var2DB’BYTE’,’word’,’WORD’buf1DB100DUP(?)buf2DB7DUP(5DUP(55H),10DUP(240))var3DBLENGTHbuf1pointerDWvar1,buf1(或者pointerDWOFFSETvar1,OFFSETbuf1)2.设变量var1的逻辑地址为0100:0000,画出下列语句定义的变量的存储分配图:var1DB12,-12,20/6,4DUP(0,55H)var2DB‘Assemble’var3DW‘AB’,‘cd’,‘E’var4DWvar2var5DDvar2解:3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因(设VAR1,VAR2为字变量,L1为标号):(1)MOVSI,100(2)MOVBX,VAR1[SI](3)MOVAX,[BX](4)MOVAL,[DX](5)MOVBP,AL(6)MOVVAR1,VAR2(7)MOVCS,AX(8)MOVDS,0100H(9)MOV[BX][SI],1(10)MOVAX,VAR1+VAR2(11)ADDAX,LENGTHVAR1(12)ORBL,TYPEVAR2(13)SUB[DI],78H(14)MOVSVAR1,VAR2(15)PUSH100H(16)POPCS(17)XCHGAX,ES(18)MOVDS,CS(19)JMPL1+5(20)DIVAX,10(21)SHLBL,2(22)MOVAL,15+23(23)MULCX(24)XCHGCL,[SI](25)ADCCS:[0100],AH(26)SBBVAR1-5,154解:(1)MOVSI,100正确。
东华理工 微机原理第三章习题答案

3.1给定(BX)=637DH,(SI)=2A9BH,位移量D=7237H,试确定在以下各种寻址方式下的有效地址是什么?(1) 立即寻址(2) 直接寻址(3) 使用BX的寄存器寻址(4) 使用BX的简接寻址(5) 使用BX的寄存器相对寻址(6) 基址变址寻址(7) 相对基址变址寻址答:(1) 操作数在指令中,即立即数;(2) EA=D=7237H;(3) 无EA,操作数为(BX)=637DH;(4) EA=(BX)=637DH;(5) EA=(BX)+D=0D5B4H;(6) EA=(BX)+(SI)=8E18H;(7) EA=(BX)+(SI)+D=1004FH;超过了段的边界,最高进位位丢失,因此EA=004FH。
3.2试根据以下要求写出相应的汇编语言指令(1) 把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器中。
(2) 用寄存器BX和SI的基址变址寻址方式把存储器中的一个字节与AL寄存器的内容相加,并把结果送到AL寄存器中。
(3) 用寄存器BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和(CX)相加,并把结果送回存储器中。
(4) 用位移量为0524H的直接寻址方式把存储器中的一个字与数2A59H相加,并把结果送回存储单元中。
(5) 把数0B5H与(AL)相加,并把结果送回AL中。
答:(1) ADD DX, BX(2) ADD AL, [BX][SI](3) ADD [BX+0B2H], CX(4) ADD WORD PTR [0524H], 2A59H(5) ADD AL, 0B5H3.3写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令。
要求使用以下几种寻址方式:(1) 寄存器间接寻址(2) 寄存器相对寻址(3) 基址变址寻址答:(1) MOV BX, OFFSET BLOCK ADD BX, (6–1)*2MOV DX, [BX](2) MOV BX, OFFSET BLOCKMOV DX, [BX+(6–1)*2]BLOCK[BX](3) MOV BX, OFFSET BLOCKMOV SI, (6–1)*2MOV DX, [BX][SI]3.4现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器的内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理习题答案3《微型计算机原理》习题3(P117)参考答案(部分题号与教材有错位,请注意)3.1 为什么要研究8086/8088微处理器及其系统?这比直接研究32位微处理器及其系统有何优缺点?解:尽管8086/8088后续的80286、80386、80486以及Pentium 系列CPU结构和功能已发生很大变化,但从基本概念与结构以及指令格式上来讲,他们仍然是经典的8086/8088CPU的延续与提升。
3.2 8086 CPU有多少根数据线和地址线?它能寻址多少内存地址单元和I/O端口?8088CPU又有多少根数据线和地址线?为什么要设计8088CPU?解:8086 CPU有16根数据线和20根地址线,可寻址1MB存储单元和64KB的I/O端口。
8088 CPU 有16位内部数据线和8条外部数据总线,20根地址线。
8088 CPU 是8086 CPU的向下兼容版,这样设计主要为了与INTEL原有的8位外围接口芯片直接兼容。
3.3 8086 CPU内部按功能可分为哪两大部分?他们各自的主要功能是什么?解:从功能上讲,8086可分为两个部分,即总线接口单元(bus interface unit,BIU)和执行单元(execution unit ,EU)。
总线接口单元(BIU)的功能是负责CPU与存储器或I/O设备之间的数据传送。
EU的功能只是负责执行指令;执行的指令从BIU的指令队列缓冲器中取得,执行指令的结果或执行指令所需要的数据,都由EU向BIU发出请求,再由BIU经总线控制电路对存储器或外设存取。
3.4 8086 CPU内部的总线接口单元BIU由哪些功能部件组成?他们的基本操作原理是什么?解:BIU内有4个16位的段地址寄存器CS、DS、SS和ES,16位指令指针IP,6字节指令队列缓冲器,20位地址加法器和总线控制电路。
基本操作原理是BIU要从内存取指令送到指令队列缓冲器;CPU 执行指令时,总线接口单元要配合执行单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。
3.5 什么叫微处理器的并行操作方式?为什么说8086 CPU具有并行操作的功能?在什么情况下8086的执行单元EU才需要等待总线接口单元BIU提取指令?解:并行操作,就是CPU执行完1条指令后就可以立即执行下一条指令,而不需要像以往8位CPU那样重复的进行先取指令和后执行的指令串行操作。
16位CPU的这种并行操作的特点,提高了总线的信息传输效率和整个系统的执行速度。
只有当遇到转移指令、调用指令或返回指令时,或者当某一条指令在执行过程中,需要频繁访问内存以至于总线接口单元没有空闲从内存将指令提取到指令队列中时,才需要等待总线接口单元BIU提取指令。
3.6 逻辑地址和物理地址有什么区别?为什么8086微处理器要引入“段加偏移”的技术思想?段加偏移的基本含义又是什么?试举例说明。
解:逻辑地址由16位段地址和16位段内偏移量(又称有效地址)组成,程序中指令必须通过逻辑地址访问内存。
物理地址是由20条地址线信号指示的内存地址,在电路中必须使用这20条物理的地址信号线访问内存。
物理地址=段地址×16+有效地址。
参考教材:⑴P54第3~11行⑵ P56 ?2。
段寄存器?的第1段⑶ P70 ?3。
3。
5 ‘段加偏移’寻址机制允许重定位?段加偏移的基本含义是:将段寄存器内容左移4位后与16位偏移地址相加。
例:假设CS=FA00H,IP=0300H,这是物理地址为0FA300H。
3.7 在微处理器中设置指令队列缓冲器有什么作用?8086与8088 CPU中的指令队列有何区别?解:指令队列缓冲器在执行指令的同时,可以从内存中取下面一条或几条指令,取来的指令就依次暂放在指令队列中。
区别:8086指令队列为6个字节,8088为4字节;8086指令队列只要空出2个,而8088只要空出1个指令字节时,BIU便自动执行取指操作,直到填满为止。
3.8 8086 CPU的基址寄存器BX和基址指针(或基址指针寄存器)BP有何区别?基址指针BP和堆栈指针SP在使用中有何区别?解:基址寄存器BX在查表指令XLAT中存放表的起始地址,而基址指针BP用来存放堆栈地址。
指针寄存器SP和BP都用来指示存储位于当前堆栈段中的数据所在的地址,但SP和BP 在使用上有区别。
入栈和出栈指令是由SP给出栈顶的偏移地址,故称为堆栈指针寄存器。
而BP则是存放位于堆栈段中的一个数据区的基地址的偏移地址,故称为堆栈基址指针寄存器。
3.9 段地址和段起始地址相同吗?两者是什么关系?8086的段起始地址就是段基址吗?它是怎样获得的?解:不同。
为了使8086/8088 CPU能够寻址1MB内存空间,在其内部设计了一组16位的段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移4位形成20位的段起始地址。
8086的段起始地址就是段基址。
由段寄存器左移4位形成20位的段基址。
3.10 微处理器在实模式下操作时,段寄存器的用途是什么?解:为了使8086/8088 CPU能够寻址1MB内存空间,在其内部设计了一组16位段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移4位形成20位的段起始地址,它们通常被称为段基址;这样,8086/8088就有可能寻址1MB存储空间并将其分为若干个逻辑段,提供在内存中的重定位功能。
3.11 在实模式下,若段寄存器中装入如下数值,试写出每个段的起始地址和结束地址。
(1)1000H (2)1234H (3)E000H (4)AB00H解:(1)起始地址:10000H 结束地址:10000H+FFFFH=1FFFFH(2)起始地址:12340H 结束地址:12340H+FFFFH=2233FH (3)起始地址:E0000H 结束地址:E0000H+FFFFH=EFFFFH (4)起始地址:AB000H 结束地址:AB000H+FFFFH=BAFFFH3.12微处理器在实模式下操作,对于下列CS:IP组合,计算出要执行的下条指令的存储器地址。
(1)CS=1000H和IP=2000H (2)CS=2400H和IP=1A00(3)CS=1A00和IP=B000H (4)CS=3456H和IP=ABCDH 解:(1)下条指令地址:10000H+2000H=12000H(2)下条指令地址:24000H+1A00H=25A00H(3)下条指令地址:1A000H+B000H=25000H(4)下条指令地址:34560H+ABCDH=3F12DH3.13 8086在使用什么指令时,用哪个存储器保存记数值?解:在使用无条件重复指令REP时,CX寄存器用来保存记数值;在使用循环控制指令LOOP时,CX寄存器用来保存记数值。
3.14 IP寄存器的用途是什么?它提供的是什么信息?解:简单地说,IP寄存器指示即将执行的下一条指令的段内偏移地址。
一般情况下,CPU每取一个指令字节,IP就自动加1,从而保证程序的顺序运行。
程序控制类指令改变IP值,从而改变程序的运行顺序。
3.15 8086的进位标志位有哪些运算指令来置位?解:当执行加法、减法、乘法指令、BCD调整指令、移位和循环指令都会影响进位标志,但使CF 置位的运算指令只有NEG指令(STC 不算运算指令)。
3.16 如果带符号数FFH与01H相加,会产生溢出吗?解:0FFH+01H=0H,所以不会产生溢出。
3.17 某个数包含有5个1,它具有什么奇偶性?解:奇偶性为奇,标志PF=03.18 某个数为全0,它的零标志位为0吗?(题目不好,应该改为:某指令执行后,其结果为全0,它的零标志位为0吗?)解:不为0,零标志ZF=13.19 用什么指令设置哪个标志位,就可以控制微处理器的INTR 引脚?解:用STI和CLI指令控制IF标志,就可以控制微处理器的INTR 引脚。
3.20 微处理器在什么情况下才执行总线周期?一个基本的总线周期由几个状态组成?在什么情况下需要插入等待状态?解:为了从存储器中取得指令或者与一个存储单元或I/O接口单元传送数据,需要它的总线接口单元执行一个总线周期。
一个总线周期由T1、T2、T3和T4这四个状态。
由于外设或存储器的速度较慢,不能及时的配合CPU传送数据。
这时,外设或存储器就会通过“READY”的信号线在T3状态启动之前向CPU发一个“数据未准备好”信号,表示他们还来不及同CPU之间传送数据,于是,CPU会在T3之后自动插入一个或多个附加的时钟周期T W,这个T W就叫等待状态。
3.21 什么叫做非规则字,微处理器对非规则字是怎样操作的?解:对内存中存放的字数据,其低位字节在奇数地址开始存放,称为非规则存放,存放的字叫非规则字。
8086对非规则字必须分两次访问。
3.22 8086对1MB的存储空间是如何按高位库和低位库来进行选择和访问的?用什么控制信号来实现对两个库的选择?解:8086的1MB存储空间分为两个512KB的存储体,又称存储库,分别叫高位库和低位库,低位库与数据总线D7—D0相连,该库中每个单元的地址均为偶数地址,高位库与数据总线D15—D8相连,该库中每个单元的地址均为奇数地址。
用A0对低位库和用BHE对高位库实现选择控制。
3.23 堆栈的深度由哪个寄存器确定?为什么说一个堆栈的深度最大为64kB?在执行一条入栈或出栈命令时,栈顶地址将如何变化?解:堆栈的深度由堆栈指针SP来确定。
因为存储器中包括堆栈段在内的每一个逻辑段至多可包含64KB长的连续存储单元,所以一个堆栈的深度最大为64KB。
执行PUSH s指令时,先SP←SP-2,再[SS:SP]←S执行POP d指令时,先d←[SS:SP],再SP←SP+23.25 8086/8088CPU对RESET复位信号的复位脉冲宽度有何要求?复位后内部寄存器的状态如何?解:RESET复位信号的复位脉冲宽度不得小于4个时钟周期。
复位后各个寄存器状态如下:CS=0FFFFH,DS=ES=SS=0,F=0,指令队列清空。
3.26 ALE信号起什么作用?它在使用时能否被浮空?DT/R信号起什么作用?它在什么情况下被浮置为高阻状态?解:它是8086/8088提供给地址锁存器8282/8283的控制信号,高电平有效。
ALE在使用时不能被浮空。
在使用8286/8287作为数据总线收发器时,DT/R信号用来控制8286/8287的数据传送方向。
在DMA方式时,它被置为高阻状态。
3.27 8086/8088CPU的哪些引脚采用了时分复用技术?哪些引脚具有两种功能?解:地址/数据总线AD15—AD0,地址/状态总线A19/S6—A16/S3,BHE/S7采用了分时复用技术。