搜档网
当前位置:搜档网 › 微机原理习题答案

微机原理习题答案

微机原理习题答案
微机原理习题答案

《微型计算机原理》习题3(P117)参考答案

(部分题号与教材有错位,请注意)

为什么要研究8086/8088微处理器及其系统?这比直接研究32位微处理器及其系统有何优缺点?

解:尽管8086/8088后续的80286、80386、80486以及Pentium系列CPU结构和功能已发生很

大变化,但从基本概念与结构以及指令格式上来讲,他们仍然是经典的8086/8088CPU的延续与

提升。

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位外围接口芯

片直接兼容。

8086 CPU内部按功能可分为哪两大部分?他们各自的主要功能是什么?

解:从功能上讲,8086可分为两个部分,即总线接口单元(bus interface unit,BIU)和执

行单元(execution unit ,EU)。

总线接口单元(BIU)的功能是负责CPU与存储器或I/O设备之间的数据传送。

EU的功能只是负责执行指令;执行的指令从BIU的指令队列缓冲器中取得,执行指令的结

果或执行指令所需要的数据,都由EU向BIU发出请求,再由BIU经总线控制电路对存储器或外

设存取。

8086 CPU内部的总线接口单元BIU由哪些功能部件组成?他们的基本操作原理是什么?

解:BIU内有4个16位的段地址寄存器CS、DS、SS和ES,16位指令指针IP,6字节指令队列缓冲器,20位地址加法器和总线控制电路。

基本操作原理是BIU要从内存取指令送到指令队列缓冲器;CPU执行指令时,总线接口单元要配合执行单元从指定的内存单元或者外设端口中取数据,将数据传送给执行单元,或者把执行单元的操作结果传送到指定的内存单元或外设端口中。

什么叫微处理器的并行操作方式?为什么说8086 CPU具有并行操作的功能?在什么情况下

8086的执行单元EU才需要等待总线接口单元BIU提取指令?

解:并行操作,就是CPU执行完1条指令后就可以立即执行下一条指令,而不需要像以往8位CPU那样重复的进行先取指令和后执行的指令串行操作。16位CPU的这种并行操作的特点,提高了总线的信息传输效率和整个系统的执行速度。

只有当遇到转移指令、调用指令或返回指令时,或者当某一条指令在执行过程中,需要频繁访问内存以至于总线接口单元没有空闲从内存将指令提取到指令队列中时,才需要等待总线接口单元BIU提取指令。

逻辑地址和物理地址有什么区别?为什么8086微处理器要引入“段加偏移”的技术思想?段加偏移的基本含义又是什么?试举例说明。

解:

逻辑地址由16位段地址和16位段内偏移量(又称有效地址)组成,程序中指令必须通过逻辑地址访问内存。物理地址是由20条地址线信号指示的内存地址,在电路中必须使用这20条物理的地址信号线访问内存。物理地址=段地址×16+有效地址。

参考教材:⑴P54第3~11行

⑵ P56 “2。段寄存器”的第1段

⑶ P70 “3。3。5 ‘段加偏移’寻址机制允许重定位”

段加偏移的基本含义是:将段寄存器内容左移4位后与16位偏移地址相加。例:假设CS=FA00H,IP=0300H,这是物理地址为0FA300H。

在微处理器中设置指令队列缓冲器有什么作用?8086与8088 CPU中的指令队列有何区别?解:指令队列缓冲器在执行指令的同时,可以从内存中取下面一条或几条指令,取来的指令就依次暂放在指令队列中。

区别:8086指令队列为6个字节,8088为4字节;8086指令队列只要空出2个,而8088只要空出1个指令字节时,BIU便自动执行取指操作,直到填满为止。

8086 CPU的基址寄存器BX和基址指针(或基址指针寄存器)BP有何区别?基址指针BP和堆栈指针SP在使用中有何区别?

解:基址寄存器BX在查表指令XLAT中存放表的起始地址,而基址指针BP用来存放堆栈地址。

指针寄存器SP和BP都用来指示存储位于当前堆栈段中的数据所在的地址,但SP和BP在使用上有区别。入栈和出栈指令是由SP给出栈顶的偏移地址,故称为堆栈指针寄存器。而BP 则是存放位于堆栈段中的一个数据区的基地址的偏移地址,故称为堆栈基址指针寄存器。

段地址和段起始地址相同吗?两者是什么关系?8086的段起始地址就是段基址吗?它是怎样获得的?

解:不同。为了使8086/8088 CPU能够寻址1MB内存空间,在其内部设计了一组16位的段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移4位形成20位的段起始地址。

8086的段起始地址就是段基址。由段寄存器左移4位形成20位的段基址。

微处理器在实模式下操作时,段寄存器的用途是什么?

解:为了使8086/8088 CPU能够寻址1MB内存空间,在其内部设计了一组16位段寄存器,用这些段寄存器的内容作为段地址,再由段寄存器左移4位形成20位的段起始地址,它们通常被称为段基址;这样,8086/8088就有可能寻址1MB存储空间并将其分为若干个逻辑段,提供在内存中的重定位功能。

在实模式下,若段寄存器中装入如下数值,试写出每个段的起始地址和结束地址。

(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=BAFFFH

微处理器在实模式下操作,对于下列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=3F12DH

8086在使用什么指令时,用哪个存储器保存记数值?

解:在使用无条件重复指令REP时,CX寄存器用来保存记数值;

在使用循环控制指令LOOP时,CX寄存器用来保存记数值。

IP寄存器的用途是什么?它提供的是什么信息?

解:简单地说,IP寄存器指示即将执行的下一条指令的段内偏移地址。一般情况下,CPU每取一个指令字节,IP就自动加1,从而保证程序的顺序运行。程序控制类指令改变IP值,从而改变程序的运行顺序。

8086的进位标志位有哪些运算指令来置位?

解:当执行加法、减法、乘法指令、BCD调整指令、移位和循环指令都会影响进位标志,但使CF 置位的运算指令只有NEG指令(STC不算运算指令)。

如果带符号数FFH与01H相加,会产生溢出吗?

解:0FFH+01H=0H,所以不会产生溢出。

某个数包含有5个1,它具有什么奇偶性?

解:奇偶性为奇,标志PF=0

某个数为全0,它的零标志位为0吗?(题目不好)

解:不为0,零标志ZF=1

用什么指令设置哪个标志位,就可以控制微处理器的INTR引脚?

解:用STI和CLI指令控制IF标志,就可以控制微处理器的INTR引脚。

微处理器在什么情况下才执行总线周期?一个基本的总线周期由几个状态组成?在什么情况下需要插入等待状态?

解:为了从存储器中取得指令或者与一个存储单元或I/O接口单元传送数据,需要它的总线接口单元执行一个总线周期。

一个总线周期由T1、T2、T3和T4这四个状态。

由于外设或存储器的速度较慢,不能及时的配合CPU传送数据。这时,外设或存储器就会通过“READY”的信号线在T3状态启动之前向CPU发一个“数据未准备好”信号,表示他们还来不及同CPU之间传送数据,于是,CPU会在T3之后自动插入一个或多个附加的时钟周期T W,这个T W就叫等待状态。

什么叫做非规则字,微处理器对非规则字是怎样操作的?

解:对内存中存放的字数据,其低位字节在奇数地址开始存放,称为非规则存放,存放的字叫非规则字。8086对非规则字必须分两次访问。

8086对1MB的存储空间是如何按高位库和低位库来进行选择和访问的?用什么控制信号来实现对两个库的选择?

解:8086的1MB存储空间分为两个512KB的存储体,又称存储库,分别叫高位库和低位库,低位库与数据总线D7—D0相连,该库中每个单元的地址均为偶数地址,高位库与数据总线D15—D8相连,该库中每个单元的地址均为奇数地址。

用A0对低位库和用BHE对高位库实现选择控制。

堆栈的深度由哪个寄存器确定?为什么说一个堆栈的深度最大为64kB?在执行一条入栈或出栈命令时,栈顶地址将如何变化?

解:堆栈的深度由堆栈指针SP来确定。

因为存储器中包括堆栈段在内的每一个逻辑段至多可包含64KB长的连续存储单元,所以一个堆栈的深度最大为64KB。

执行PUSH s指令时,先SP←SP-2,再[SS:SP]←S

执行POP d指令时,先d←[SS:SP],再SP←SP+2

8086/8088CPU对RESET复位信号的复位脉冲宽度有何要求?复位后内部寄存器的状态如何?解:RESET复位信号的复位脉冲宽度不得小于4个时钟周期。复位后各个寄存器状态如下:CS=0FFFFH,DS=ES=SS=0,F=0,指令队列清空。

ALE信号起什么作用?它在使用时能否被浮空?DT/R信号起什么作用?它在什么情况下被浮置为高阻状态?

解:它是8086/8088提供给地址锁存器8282/8283的控制信号,高电平有效。ALE在使用时不能被浮空。

在使用8286/8287作为数据总线收发器时,DT/R信号用来控制8286/8287的数据传送方向。在DMA方式时,它被置为高阻状态。

8086/8088CPU的哪些引脚采用了时分复用技术?哪些引脚具有两种功能?

解:地址/数据总线AD15—AD0,地址/状态总线A19/S6—A16/S3,BHE/S7采用了分时复用技术。

MN/MX、DT/R、M/IO、RQ/GT1、RQ/GT0具有两种功能。

8086/8088CPU的微机系统有哪两种工作方式?它们由什么引脚来实现控制?这两种工作方式的主要特点和区别如何?

解:8086/8088 CPU微机系统有最大和最小两种工作方式。他们由MN/MX引脚实现控制。

MN/MX接电源电压,系统工作于最小方式,即单处理机系统,适合于较小规模的应用。MN/MX 接地,系统工作于最大方式,一般包含两个或多个微处理器,这样就要解决主处理器和协处理器之间的协调问题以及对总线的共享控制问题。最大方式和最小方式的主要区别是外加有8288总线控制器。

当8086/8088按最大方式操作时,8288总线控制器主要提供什么功能?8086/8088 CPU在最大方式下工作时有哪些专用引脚?它们的主要作用是什么?

解:通过它对CPU发出的控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号和对锁存器器8282及对总线收发器8286的控制信号,使总线控制功能更加完善。

在最大方式下使用的专用引脚有:

(1)QS1、QS0指令队列状态信号输出

这两个信号组合起来提供了本总线周期的前一个时钟周期中指令队列的状态,以便于外部对8086/8088内部指令队列的动作跟踪。

(2)LOCK 总线封锁信号输出

当LOCK为低电平时,系统中其他主部件就不能占有总线。

(3)RQ/GT1、RQ/GT0总线请求信号输入/总线

这两个信号端可供CPU以外的两个处理器用来发出使用总线的请求信号和接收CPU对总线请求信号的回答信号。

(4)S0、S1、S2状态信号,8288根据这三个状态信号和CLK时钟信号组合输出各种总线控制信号。

为什么要研究指令格式?8086/8088微处理器有哪些基本的指令格式?

解:指令格式是按指令系统的特定规范与要求精心设计的,了解指令格式,对完整的掌握一个成功设计的指令系统是十分必要的。

基本指令格式有:无操作数指令、单操作数指令、双操作数指令

在指令格式中,MOD字段指定了什么信息?它和R/M字段确定的有效地址EA的计算方法共有多少种?

解:MOD字段给定指令的寻址方式,即规定是存储器或寄存器的寻址类型,并确定在存储器寻址类型时是否有位移量。

它和R/M字段确定的有效地址EA计算方法共有24种

说明某些机器语言指令中的D位和W位是何作用?

解:D表示来自/到寄存器的方向。D=1,表示由指令REG字段所确定的某寄存器为目标;D=0,则表示该寄存器为源。

W表示操作数为字或字节处理方式。W=1,表示为字;W=0,则为字节。

假定指令是16位模式指令,如果指令寄存器字段(REG)的信息为001,W字段为0,试问寻址时选择什么寄存器?(题目自相矛盾)

解: 16位模式与W字段为0相互矛盾!

某机器语言16位模式指令的R/M=001,MOD=00,试问该指令指定了哪种存储器寻址方式?解:指定了[BX+DI]存储器寻址方式

何谓寻址方式?8086/8088微处理器有哪几种主要的寻址方式?

解:寻址方式即寻找操作数的方式。主要的寻址方式有:固定寻址、立即数寻址、寄存器寻址、存储器寻址、串操作指令寻址、I/O端口寻址方式,其中存储器寻址又可分为:基址寻址、变址寻址、基址加变址。此外,程序控制指令还有直接、相对、寄存器间接、存储器间接等寻址方式。

试写出寻址存储器操作时计算有效地址EA的通式。

解:EA=基址值(BX/BP)+变址值(SI/DI)+位移量Disp(0/8/16位)

指出8086/8088下列指令源操作数的寻址方式。

(1)MOV AX,1200H (2) MOV BX,[1200H]

(3)MOV BX,[SI] (4) MOV BX,[SI+1200H]

(5)MOV [BX+SI],AL (6) ADD AX,[BX+DI+20H]

(7)MUL BL (8) JMP BX

(9)IN AL,DX (10)INC WORD PTR[BP+50H]

解:(1)立即数寻址(2)存储器直接寻址

(3)变址寄存器间接寻址(4)寄存器变址间接寻址

(5)基址加变址寄存器间接寻址(6)基址加变址间接寻址

(7)寄存器寻址(8)寄存器寻址

(9)端口间接寻址(10)寄存器基址加变址间接寻址

指出8086/8088下列指令中存储器操作数物理地址的计数表达式。

(1)MOV AL,[DI] (2)MOV AX,[BX+SI]

(3)MOV 8[BX+DI],AL (4)ADD AL,ES:[BX]

(5)SUB AX,[2400H] (6)ADC AX,[BX+DI+1200H]

(7)MOV CX,[BP+SI] (8)INC BYTP PTR[DI]

解:(1)PA=DS×16+DI (2)PA=DS×16+(BX+SI)

(3)PA=DS×16+(BX+DI+8)(4)PA=ES×16+BX

(5)PA=DS×16+2400H (6)PA=DS×16+(BX+DI+1200H)

(7)PA=SS×16+(BP+SI)(8)PA=DS×16+DI

指出8086/8088下列指令的错误何在?

(1)MOV [SI],IP (2)MOV CS,AX

(3)MOV BL,SI+2 (4)MOV 60H,AL

(5)PUSH 2400H (6) INC [BX]

(7)MUL-60H (8)ADD [2400H],2AH

(9)MOV [BX],[DI] (10)MOV SI,AL

解:(1)IP不可与内部寄存器之间实现直接数据传送

(2)代码段寄存器CS不可与内部寄存器之间实现直接数据传送

(3)应是[SI+2]指示的内存单元的字节内容

(4)立即数60H不可做目的操作数

(5)PUSH的源操作数只能为寄存器操作数或内存操作数

(6)间接寻址存储器数据加1指令要用TYPE PTR类型操作符来标识数据类型

(7)MUL 指令的源操作数只能为寄存器操作数或内存操作数

(8)要用TYPE PTR类型操作符来标识数据类型

(9)两者不能同为存储器操作数

(10)AL为8位,SI为16位,数据类型不匹配

MOV CS,AX指令会带来什么错误?

解:这条指令不存在。如果有的话,将可以直接仅改变代码段的段基址而IP值不变,程序运行顺序发生变化,变到那里去了?很难控制。

阅读下列程序段,指出每条指令执行以后有关寄存器的内容是什么?

MOV AX,0ABCH ; AX= 0ABCH

DEC AX ; AX= 0ABBH

AND AX,00FFH ; AX= 00BBH

MOV CL,4 ; CL= 4

SAL AL,1 ;AL= 76H,CF=1

MOV CL,AL ;CL= 76H

ADD CL,78H ;CL= 0EEH,CF=0

PUSH AX ;AX=0076H

POP BX ;BX=0076H

解:执行完后,AX=0076H,CF=0,CL=0EEH

指出RET和IRET两条指令的区别,并说明各用在什么场合?

解:RET用于从过程返回,而IRET用于从中断中返回。

说明MOV BX,DATA和MOV BX,0FFSET DATA指令之间的区别。

解:MOV BX,DATA ;DATA是字变量名,指令功能是把DATA变量的内容→BX MOV BX,0FFSET DATA ;把DATA变量的段内偏移地址→BX

3.44给定DS=1100H,BX=0200H,LIST=0250H和SI=0500H。试确定下面各条指令寻址存储器

的物理地址。

(1)MOV LIST[SI],EDX (2)MOV CL,LIST[BX+SI]

(3)MOV CH,[BX+SI] (4)MOV DL,[BX+100]

解:(1)PA=11000+0500+0250=11750H (2)PA=11000+0200+0500+0250=11950H (3)PA=11000+0200+0500=11700H (4)PA=11000+0200+0100=11300H

假定PC机存储器低地址区有关单元的内容如下所示。

(20H)=3CH,(21H)=00H,(22H)=86H,(23H)=0EH

且CS=2000H,IP=0010H,SS=1000H,SP=0100H

FLAGS=0240H,这时若执行INT 8指令,试问:

(1)程序转向从何处执行(用物理地址回答)?

(2)栈顶6个存储单元的地址(用逻辑地址回答)及内容分别是什么?

解:(1)PA=0E86×10H + 003CH = 0E89CH

(2)LA=1000:00FAH~1000:00FFH

设SP=2000H,AX=3000H,BX=5000H,执行下列片段程序后,问SP=?AX=?BX=?

PUSH AX

PUSH BX

POP AX

解:SP=1FFEH,AX=5000H,BX=5000H

某程序段为

2000H:304CH ABC:MOV AX,1234H

。。。

2000H:307EH JNE ABC

试问代码段中跳转指令的操作数为何值?

解:操作数为4CH-(7E+2)=0CCH

若AX=5555H,BX=FF00H,试问在下列程序段执行后,AX=?BX=?CF=?

AND AX,BX ;AX=5500H

XOR AX,AX ;AX=0000H

NOT BX

解:AX=0000H,BX=00FFH,CF=0

3.49若CS=E000H,说明代码段可寻址物理存储地址空间的范围。

解:代码段可寻址物理存储地址空间的范围是:E0000H—EFFFFH,共64KB的空间。

3.50若DS=3000H,BX=2000H,SI=0100H,ES=4000H,计算出下述各条指令中存储器操作数的

物理地址。

(1)MOV [BX],AH (2) ADD AL,[BX+SI+1000H]

(3)MOV AL,[BX+SI] (4)SUB AL,ES:[BX]

解:(1)PA=30000+2000=32000H (2)PA=30000+2000+0100+1000=33100H (3)PA=30000+2000+0100=32100H (4)PA=40000+2000=42000H

3.51试比较SUB AL,09H与CMP AL,09H这两条指令的异同,若AL=08H,分别执行下述两条

指令后,SF=?CF=?OF=?ZF=?

解:在SUB指令中,将AL- 09H的值赋给AL,而CMP指令只影响标志,不保存结果。

SUB AL,09H ;SF=1,CF=1,OF=0,ZF=0,AL=FF

CMP AL,09 ;SF=1,CF=1,OF=0,ZF=0,AL=08

3.52选用最少的指令,实现下述要求的功能。

(1)AH的高4位清零

(2)AL的高4位取反

(3)AL的高4位移到低4位,高4位清零

(4)AH的低4位移到高4位,低4位清零

解:(1)AND AH,0FH

(2)XOR AL,0F0H

(3)MOV CL,4

SHR AL,CL

(4)MOV CL,4

SHL AH,CL

3.53设BX=6D16H,AX=1100H,写出下列两条指令执行后BX寄存器中的内容。

MOV CL,06H ;CL=06H

ROL AX,CL ;AX=4004H

SHR BX,CL ;BX=01B4H

解:BX=01B4H

3.54设初值AX=0119H,执行下列程序段后AX=?

MOV CH,AH ;CH=01H

ADD AL,AH ;AL=1AH,AF=0,CF=0

DAA ;AL=20,AF=1,CF=0

XCHG AL,CH ;AL=01H,CH=20H

ADC AL,34H ;AL=01H+34H=35H

DAA ;AL=35H

MOV AH,AL ;AH=35H

MOV AL,CH ;AL=20H

HLT

解:AX=3520H

3.55设初值AX=6264H,,CX=0004H,在执行下列程序段后AX=?

AND AX,AX ;AX=6264H,ZF=0

JZ DONE

SHL CX,1 ;CX=0008H

ROR AX,CL ;AX=6462H

DONE:OR AX,1234H ;AX=7676H

解:AX=7676H

3.56写出可使AX清零的几条指令。

解:AND AX,0;

MOV AX,0;

XOR AX,AX。

3.57什么叫堆栈?说明堆栈中数据进出的顺序以及压入堆栈和弹出堆栈的操作过程。

解:堆栈中数据的进出顺序为“先进后出”

PUSH S操作过程,先SP←SP-2,再[SS:SP]←S

POP D操作过程,先D←[SS:SP],再SP←SP-2

3.588086~80286微处理器中PUSH和POP指令在堆栈和寄存器或存储单元之间总是传送多少

位数字?

解:传送16位数字

3.59哪个段寄存器不能从堆栈中弹出?

解:SS段寄存器不能从堆栈中弹出。

3.60如果堆栈底部定位在存储器位置02200H,试问SS和SP中将装入什么值?

解:SS=0220H,SP=0000H

3.61带有OFFSET的MOV指令与LEA指令比较,哪条指令的效率更高?

解:MOV指令与LEA指令的功能不同,应用的地方也不同,应该说没有可比性。在二者都可用时,MOV指令的效率更高。带有OFFSET的MOV指令不能完全替代LEA指令。

3.62若AX=1001H,DX=20FFH,当执行ADD AX,DX指令后,请列出和数及标志寄存器中每个

位的内容(CF、AF、SF、ZF和OF)。

解:AX=3100H, CF=0;AF=1;SF=0;ZF=0;OF=0。

3.63假如想从200中减去AL中的内容,用SUB 200,AL是否正确?如果不正确,请写出正

确的指令表示。

解:不可用立即数做目的操作数

MOV BL,200

SUB BL,AL

3.64若DL=0F3H,BH=72H,当从DL减去BH后,列出差数及标志寄存器各位的内容。

解:差数为81H,AF=0,SF=1,ZF=0,OF=0

3.65当两个16位数相乘时,乘积放在哪两个寄存器中?并指出积的高有效位和低有效位分别

防在哪个寄存器中?CF和OF两个标志位是什么?

解:乘积放在DX,AX中,高位放在DX中,低位放在AX中,当DX≠0时,CF=OF=1,否则CF=OF=0 。

3.66

3.67写出一个程序段,求DL寄存器中一个8位数的3次方,起初将5装入DL,要确保结果

是16位的数字。

解1:16位二进制数最大可以是40的三次方,而402 = 1600 > 256,故:

MOV AL,X ;X可以是0至40的任意数

MOV DL,AL ;

MUL DL ;求X2

MOV DH,AH ;保留X2的高8位

MUL DL ;X2的低8位再乘X

MOV BX,AX ;保存X2的低8位与X的乘积

MOV AL,DH

MUL DL ;X2的高8位再乘X,乘积不会超出8位

MOV CL,8

SHL AX,CL ;把X2的高8位与X的乘积左移8位(乘以256)

ADD AX,BX ;再加上X2的低8位与X的乘积= X3

结果在AX中

解2:如果X≤15,则152 ≤255,故:

MOV AL,X ;X可以是0至15的任意数

MOV DL,AL ;

MUL DL ;求X2,,且高8位AH=0

MUL DL ;X2再乘X

结果在AX中

3.68叙述IMUL WORD PTR[SI]指令的操作。

解:DX、AX←(AX)×[SI],即AX中的和SI、SI+1所指内存单元中的两个16位有符号数相乘,结果送DX和AX中。

3.69叙述IMUL BX,DX,200H指令的操作。(题目有错!)

解:

3.70当执行8位数除法指令时,被除数放在哪个寄存器中?当执行16位除法指令时,商数放

在哪个寄存器中?

解:8位除法时,被除数放在AX中;16位除法时,商数放于AX中。

3.71执行除法指令时,微处理器能检测出哪种类型的错误?叙述它的处理过程。

解:若除法运算所得的商位数大于除数的位数,即超出指令允许的商的范围,则系统将其当作除数为0处理,自动产生类型0中断,CPU将转去执行类型0中断服务程序作适当处理,此时所得的商数和余数均无效。在进行类型0中断处理时,先是将标志位进栈,IF和TF清0,接着是CS和IP的内容进栈;然后将0、1两单元的内容填入IP,而将2、3两单元的内容填入CS;进入0号中断的处理程序。

3.72试写出一个程序段,用CL中的数据除BL中的数据,然后将结果乘2,最后的结果的存

入DX寄存器中的16位数。

解:MOV AH,0

MOV AL,BL ;装入被除数

DIV CL ;除以CL

MOV AH,0 ;忽略余数

SHL A X,1 ;商乘以2

MOV DX,AX ;转存入DX

3.73BCD码算术运算使用哪些指令?这些指令的功能是什么?在使用时对它们在指令系列中

所放的位置有什么要求?

解:BCD码算术运算使用DAA、DAS指令。DAA—加法十进制调整指令,必须跟在ADD或ADC指令之后使用。DAS—减法的十进制调整指令,必须跟在SUB或SBB指令之后。

3.74ASCII码算术运算使用哪些指令?这些指令的功能的什么?

解:非组合BCD(ASCII)码算术运算使用AAA、AAS、AAM、AAD指令。AAA—加法的ASCII码调整指令;AAS—减法的ASCII码调整指令;AAM—非组合BCD码的乘法调整指令;AAD—非组合BCD码的除法调整指令。

3.75解释AAM指令将二进制转换为BCD码的操作过程。

解:将AL寄存器中的结果除以10,所得的商数即为高位十进制数(十位)置入AH中,所得的余数即为低位十进制数(个位)置入AL中。

3.76设计一个程序段,将AX和BX中的8位BCD数加CX和DX中的8位BCD数(AX和CX是

最高有效寄存器),加法以后的结必须存入CX和DX中。

解:ADD DX,BX

ADC CX,AX

3.77用AND指令实现下列操作。

(1)BX“与”DX,结果存入BX (2)0AEH“与”DH

(3)DI“与”BP,结果存入DI中(4)1234H“与”AX

(5)由BP寻址的存储单元的数据“与”CX,结果存入存储单元中。

(6)AL和WAIT存储单元中的内容相“与”,结果存入WAIT。

解:(1)AND BX,DX (2)AND DH,0AEH

(3)AND DI,BP (4)AND AX,1234H

(5)AND [BP],CX (6)AND [WAIT],AL

设计一个程序段,将DH中的最左三位清零,而不改变DH中的其他地位,结果存入BH中。解:AND DH,1FH

MOV BH,DH

用“OR”指令实现下列操作。

(1)BL“或”DH,结果存入DH (2)0AEH“或”ECX

(3)DX“或”SI,结果存入SI (4)1234H“或”EAX

(5)由BP寻址的存储单元的数据“或”CX,结果存入存储单元中。

(6)AL和WHEN存储单元中的内容相“或”,结果存入WHEN中

解:(1)OR DH,BL (2)OR ECX,0AEH

(3)OR SI,DX (4)OR EAX,1234H

(5)OR [BP],CX (6)OR [WHEN],AL

设计一个程序段,将DI中的最右5位置1,而不改变DI中的其他位,结果存入SI中。解:OR DI,001FH

MOV SI,DI

设计一个程序段,将AX中最右4位置1,将AX中的最左3位清零,并且把AX中的7、8、9位取反。

解:OR AX,000FH

AND AX,1FFFH

XOR AX,0380H

选择正确的指令以实现下列任务。

(1)把DI右移3位,再把0移入最高位

(2)把AL中的所有位左移一位,使0移入最低位

(3)AL循环左移3位

(4)DX带进位循环右移1位

解:(1)MOV CL,3

SHR DI,CL

(2)SHL DI,1

(3)MOV CL,3

ROL AL,3

(4)RCR DX,1

如果要使程序无条件的转移到下列几种不同距离的目标地址,应使用哪种类型的 JMP指令?

(1)假定位移量为0120H字节

(2)假定位移量为0012H字节

(3)假定位移量为12000H字节

解:(1)段内近转移

(2)段内短转移

(3)段间远转移

近转移和远转移分别通过什么改变哪些寄存器的值来修改程序地址?

解:近转移只需修改IP寄存器内容,而远转移不光要修改IP值还要修改段寄存器CS的内容。试比较JMP [DI]与JMP FAR PTR[DI]指令的操作有什么区别?

解:二者都为间接转移,JMP [DI]的目标地址存放于存储器DS:[DI]的2个连续地址单元中,仅改变IP,属于段内转移;而JMP FAR[DI]的目标地址存放于存储器DS:[DI]的4个连续地址单元中,不但改变IP而且改变CS,属于段间远转移,程序会转移到另一代码段中的目标地址去执行后续命令。

用串操作指令设计实现如下功能的程序段:先将100个数从6180H处搬移到2000H处;再从中检索出等于AL中字符的单元(一个?),并将此单元值换成空格符。

解:CLD CLD

MOV CX,100 MOV CX,100

MOV SI,6180H LEA DI,2000H

MOV DI,2000H MOV AL,DAT

PEP MOVSB REPNE SCASB

JNZ ZER

DEC DI

MOV BYTE PTR [DI],‘’

ZER:HLT

在使用条件转移指令时,特别要注意它们均为相对转移指令,请说明“相对转移”的含义是什么?如果要向较远的地方进行条件转移,那么,此程序应如何设置?

解:相对转移的含义:在同一段内,转移的目标地址相对起始地址的距离(目标地址—起始地址),条件转移指令的相对转移范围为-128— +127。

当要转移到较远的目标地址时,可以先用条件转移指令转到较近的目标地址;然后,再从该单元起放一条无条件转移指令,这样,就可以通过该指令转移到较远的目标地址。

带参数的返回指令用在什么场合?设栈顶地址为2000H,当执行RET 0008后,问SP的值是多

少?

解:如果调用程序通过堆栈向过程传送了一些参数,过程在运行中要使用这些参数,一旦过程执行完毕,这些参数也应当弹出堆栈作废。

执行后,SP=2004H+8=200CH。

在执行中断返回指令IRET和过程(子程序)返回指令RET时,具体操作内容有什么区别?解:IRET指令总是安排在中断服务程序的出口处,由它控制从堆栈中弹出程序断点送回CS和IP中,弹出标志寄存器内容送回F中,迫使CPU返回到断点继续执行后续程序。

从过程返回(RET)指令应安排在过程的出口即过程的最后一条指令处,它的功能是从堆栈顶部弹出由CALL指令压入的断点地址值,迫使CPU返回到调用程序的断点去继续执行。

IRET至少要比RET指令多弹出一个F寄存器。

INT 40H指令的中断向量存储在哪些地址单元?试用图解说明中断向量的含义和具体内容,并指出它和中断入口地址之间是什么关系?

注:楷体部分内容不够准确、明确或不太合适。

微机原理试题及答案

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 。

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

第一章 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.作业 2.书上例题 3.课堂上反复强调的内容 4.复习题 微机原理复习题 一、单项选择题 1.PC机是( C ) A、单片机 B、单板机 C、微型计算机 D、微型计算机系统 2.CPU中运算器的主要功能是( D ) A、算术运算 B、逻辑运算 C、函数运算 D、算术运算和逻辑运算 3.8086CPU中的段寄存器用来存放( C ) A、存储段的物理地址 B、存储器的逻辑地址 C、存储器的段基值 D、存储器的起始地址 4.8086系统中内存储器的地址空间为1M,而在进行I/O-读写时,有效的地址线是( B ) A、高16位 B、低16位 C、高8位 D、低8位 5.8086CPU在进行写内存操作时,控制信号M/IO-和DT/R-是( D ) A、00 B、0 1 C、1 0 D、1 1 6.芯片8288在8086CPU系统中用作( C ) A、总线锁存器 B、总线驱动器 C、总线控制器 D、总线仲裁器 7.有一静态RAM芯片的地址线为A0~A9,数据线为D0~D3,则该存储器芯片的存储 容量为( D ) A、2K×4位 B、1KB(B:字节) C、2KB D、1K×4位 8.在16位存储系统中,为了( C ),存储字最好存放在偶地址。 A、便于快速寻址 B、节省所占的内存空间 C、减少执行指令的总线周期 D、减少读写错误 9.有一8086系统的中断向量表,在003CH:003FH单元开始依次存放34H、FEH、00H 和F0H四个字节,该向量对应的中断类型码和中断服务程序的入口地址分别为( C ) A、0EH,34FE:00F0H B、0EH,0F000:0FE34H C、0FH,0F000:0FE34H D、0FH,00F0H:34FEH 10.8259A可编程中断控制器中的中断服务寄存器ISR用于( A ) A、记忆正在处理中的中断 B、存放从外设来的中断请求信号 C、允许向CPU发中断请求 D、禁止向CPU发中断请求 11.当8255A 工作在方式1的输入状态时,8255A与外设之间的联络信号为( C )

微机原理及应用试题库(附答案)

《微机原理及应用》试题库 1. 8086和8088的引脚信号中, D 为地址锁存允许信号引脚。 A.CLK B.INTR C.NMI D.ALE 2. 下面的哪项是有效标识符: B A . 4LOOP: B. DELAYIS: C. MAIN A/B: D. GAMA$1: 3. 如图所示的三态输出电路,当 A 时,V B≈V DD。 A. E(ENABLE)=1, A=1 B. E(ENABLE)=1, A=0 C. E(ENABLE)=0, A=1 D. E(ENABLE)=0, A=0 4. 设(SS)=2000H,(SP)=0100H,(AX)=2107H,则执行指令PUSH AX 后,存放数据21H的物理地址是 D 。 A. 20102H B. 20101H C. 200FEH D. 200FFH 5. 汇编语言中,为了便于对变量的访问, 它常常以变量名的形式出现在程序中, 可以认为它是存放数据存储单元的 A 。 A.符号地址B.物理地址C.偏移地址D.逻辑地址 6. 下列四个寄存器中,不能用来作为间接寻址方式的寄存器是 A 。 A. CX B. BX C. BP D. DI (C)7. 执行下列程序段: MOV AX,0 MOV BX,1 MOV CX,100 AA:ADD AX,BX INC BX LOOP AA HLT 执行后的结果:(AX)= ,(BX)= 。 A. 5050,99 B. 2500,100 C. 5050,101 D. 2550,102 8. 假设V1和V2是用DW定义的变量,下列指令中正确的是 A 。 A.MOV V1, 20H B.MOV V1, V2 C.MOV AL, V1 D.MOV 2000H, V2 9. – 49D的二进制补码为 A 。

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空1分,共15分) 1、在计算机中,对带符号数的运算均采用补码。带符号负数1100 0011的补码为_10111101_。2、单片机通常采用“三总线”的应用模式,芯片内部设有单独的地址总线、数据总线_ 和控制总线。 3、当使用80C51单片机时,需要扩展外部程序存储器,此时EA应为_0__。 4、若(A)=B3H,(R0)=A8H,执行指令XRL A,R0之后,(A)=_1BH__。 5、在80C51单片机中,带借位减法SUBB指令中,差的D7需借位时,_CY_=1,差的D3需借位时,AC_=1。 6、80C51单片机中,在调用子程序前,用_PUSH__指令将子程序中所需数据压入堆栈,进入执行子程序时,再用___POP__指令从堆栈中弹出数据。 7、在十六进制数与ASCII码值的转换过程中,当十六进制数在0~9之间时,其对应的ASCII码值为该十六进制数加___30H______。 8、外部中断INT0和INT1有两种触发方式:___电平触发方式_____和__边沿触发方式__。 9、在单片机串行通信中,依发送与接收设备时钟的配置情况,串行通信可以分为 __异步通信___和__同步通信_。10、若累加器A中的数据为

0111 0010B,则PSW中的P=__0___。二、选择题(每题1分,共15分) 1、单片机是在一片集成电路芯片上集成了以下部分,除了( D ) A、微处理器 B、存储器 C、I/O接口电路 D、串口通信接口2、一个机器周期包含多少个晶振周期(D ) A、2 B、6 C、8 D、12 3、80C51单片机有21个特殊功能寄存器,其中与串行口相关的有以下几个,除了( B ) A、SBUF B、TCON C、SCON D、PCON 4、 80C51系列单片机具有4个8位的并行I/O口,其中哪个口工作时需要外接上拉电阻(A ) A、P0 B、P1 C、P2 D、P3 5、寄存器中的内容为地址,从该地址去取操作数的寻址方式称为( C ) A、寄存器寻址 B、直接寻址 C、寄存器间接寻址 D、变址寻址6、源地址为1005H。目的'地址为 0F87H。当执行指令“JC rel”时,rel为( B )。A、7EH B、80H C、82H D、84H 7、若(R0)=30H,(30H)=75H,(75H)=90H,执行指令MOV A,@R0后,(A)=__B____。A、30H B、75H C、90H D、00H 8、下列哪个语句是起始地址设置伪指令( A )。A、ORG B、END C、DW D、EQU 9、在80C51单片机中,各中断优先级最低的是( D )。A、外部中断0 B、外部中断1 C、定时器0 D、计数器1 10、80C51单片机的中断响应时间至少需要( C )个完整的机器周期。A、1 B、2 C、3 D、5 11、在80C51单片机中,

微机原理课后习题答案

李伯成《微机原理》习题第一章 本章作业参考书目: ①薛钧义主编《微型计算机原理与应用——Intel 80X86系列》 机械工业出版社2002年2月第一版 ②陆一倩编《微型计算机原理及其应用(十六位微型机)》 哈尔滨工业大学出版社1994年8月第四版 ③王永山等编《微型计算机原理与应用》 西安电子科技大学出版社2000年9月 1.1将下列二进制数转换成十进制数: X=10010110B= 1*27+0*26+0*25+1*24+0*23+1*22+1*21 +0*21 =128D+0D+0D+16D+0D+0D+4D+2D=150D X=101101100B =1*28+0*27+1*26+1*25+0*24+1*23+1*22+0*21+0*20 =256D+0D+64D+32D+0D+16D+4D+0D=364D X=1101101B= 1*26+1*25+0*24+1*23+1*22+0*21 +1*20 =64D+32D+0D+8D+4D+0D+1D=109D 1.2 将下列二进制小数转换成十进制数: (1)X=0.00111B= 0*2-1+0*2-2+1*2-3+1*2-4+1*2-5= 0D+0D+0.125D+0.0625D+0.03125D=0.21875D (2) X=0.11011B= 1*2-1+1*2-2+0*2-3+1*2-4+1*2-5= 0.5D+0.25D+0D+0.0625D+0.03125D=0.84375D (3) X=0.101101B= 1*2-1+0*2-2+1*2-3+1*2-4+0*2-5+1*2-6= 0.5D+0D+0.125D+0.0625D+0D+0.015625D=0.703125D 1.3 将下列十进制整数转换成二进制数: (1)X=254D=11111110B (2)X=1039D=10000001111B (3)X=141D=10001101B 1.4 将下列十进制小数转换成二进制数: (1)X=0.75D=0.11B (2) X=0.102 D=0.0001101B (3) X=0.6667D=0.101010101B 1.5 将下列十进制数转换成二进制数 (1) 100.25D= 0110 0100.01H (2) 680.75D= 0010 1010 1000.11B 1.6 将下列二进制数转换成十进制数 (1) X=1001101.1011B =77.6875D

微机原理试题及答案

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将()。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数 据处理及显示输出,应采用的数据传送方式为()。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过 ()来实现。 计数器寄存器移位寄存器D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 128 256 16K 64K 5、CPU响应中断后,通过()完成断点的保护。

执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 PA口PB口PC口控制口 7、8088CPU处理动作的最小时间单位是()。 指令周期时钟周期机器周期总线周期 8.堆栈是内存中()。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种()。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是()。

微机原理课后作业答案(第五版)

6、[+42]原=00101010B=[+42]反=[+42]补 [-42]原=B [-42]反=B [-42]补=B [+85]原=01010101B=[+85]反=[+85]补 [-85]原=B [-85]反=B [-85]补=B 10、微型计算机基本结构框图 微处理器通过一组总线(Bus)与存储器和I/O接口相连,根据指令的控制,选中并控制它们。微处理器的工作:控制它与存储器或I/O设备间的数据交换;进行算术和逻辑运算等操作;判定和控制程序流向。 存储器用来存放数据和指令,其内容以二进制表示。每个单元可存8位(1字节)二进制信息。 输入——将原始数据和程序传送到计算机。 输出——将计算机处理好的数据以各种形式(数字、字母、文字、图形、图像和声音等)送到外部。 接口电路是主机和外设间的桥梁,提供数据缓冲驱动、信号电平转换、信息转换、地址译码、定时控制等各种功能。 总线:从CPU和各I/O接口芯片的内部各功能电路的连接,到计算机系统内部的各部件间的数据传送和通信,乃至计算机主板与适配器卡的连接,以及计算机与外部设备间的连接,都要通过总线(Bus)来实现。 13、8086有20根地址线A19~A0,最大可寻址220=1048576字节单元,即1MB;80386有32根地址线,可寻址232=4GB。8086有16根数据线,80386有32根数据线。

1、8086外部有16根数据总线,可并行传送16位数据; 具有20根地址总线,能直接寻址220=1MB的内存空间; 用低16位地址线访问I/O端口,可访问216=64K个I/O端口。 另外,8088只有8根数据总线 2、8086 CPU由两部分组成:总线接口单元(Bus Interface Unit,BIU) BIU负责CPU与内存和I/O端口间的数据交换: BIU先从指定内存单元中取出指令,送到指令队列中排队,等待执行。 执行指令时所需的操作数,也可由BIU从指定的内存单元或I/O端口中获取,再送到EU去执行。 执行完指令后,可通过BIU将数据传送到内存或I/O端口中。 指令执行单元(Execution Unit,EU) EU负责执行指令: 它先从BIU的指令队列中取出指令,送到EU控制器,经译码分析后执行指令。EU的算术逻辑单元(Arithmetic Logic Unit,ALU)完成各种运算。 6、见书P28-29。 7.(1)1200:3500H=1200H×16+3500H=15500H (2)FF00:0458H=FF00H×16+0458H=FF458H (3)3A60:0100H=3A80H×16+0100H=3A700H 8、(1)段起始地址1200H×16=12000H,结束地址1200H×16+FFFFH=21FFFH (2)段起始地址3F05H×16=3F050H,结束地址3F05H×16+FFFFH=4F04FH (3)段起始地址0FFEH×16=0FFE0H,结束地址0FFEH×16+FFFFH=1FFD0H 9、3456H×16+0210H=34770H 11、堆栈地址范围:2000:0000H~2000H(0300H-1),即20000H~202FFH。执行两条PUSH指令后,SS:SP=2000:02FCH,再执行1条PUSH指令后,SS:SP=2000:02FAH。 12、(2000H)=3AH, (2001H)=28H, (2002H)=56H, (2003H)=4FH 从2000H单元取出一个字数据需要1次操作,数据是283AH; 从2001H单元取出一个字数据需要2次操作,数据是5628H; 17、CPU读写一次存储器或I/O端口的时间叫总线周期。1个总线周期需要4个系统时钟周期(T1~T4)。8086-2的时钟频率为8MHz,则一个T周期为125ns,一个总线周期为500ns,则CPU每秒最多可以执行200万条指令。

微机原理及接口技术考试各章重点题库及答案

微机原理与接口技术试题库 第一章基础知识 一、填空 1、计算机中采用二进制数,尾符用B 表示。 2、西文字符的编码是ASCII 码,用 1 个字节表示。 3、10111B用十六进制数表示为H,八进制数表示为O。 4、带符号的二进制数称为真值;如果把其符号位也数字化,称为原码。 5、已知一组二进制数为-1011B,其反码为10100B ,其补码为10101B 。 6、二进制码最小单位是位,基本单位是字节。 7、一个字节由8 位二进制数构成,一个字节简记为1B ,一个字节可以表示256 个信息。 8、用二进制数表示的十进制编码,简称为BCD 码。 9、8421码是一种有权BCD 码,余3码是一种无权BCD 码。 二、选择 1、计算机中采用 A 进制数。 A. 2 B. 8 C. 16 D. 10 2、以下的 C 编码是一种有权码。 A. 循环码 B. BCD码 C. 8421码 D. 余3码 3、八进制数的尾符是 B 。 A. B B. O C. D D. H 4、与十进制数254等值的数是 A 。 A. 11111110 B. 11101111 C. 11111011 D. 11101110 5、下列不同数制表示的数中,数值最大的是 C 。 A. 11011101B B. 334O C. 1219D D. DAH 6、与十六进制数BC等值的数是B 。 A. 10111011 B. 10111100 C. 11001100 D. 11001011 7、下列字符中,ASCII码值最小的是 A 。 A. K B. Y C. a D. i 8、最大的10位无符号二进制整数转换成十进制数是C 。 A. 51 B. 512 C. 1023 D. 1024 9、A的ASCII码值为65D,ASCII码值为68D的字母是C 。 A. B B. C C. D D. E 10、下列等式中,正确的是 D 。 A. 1KB=1024×1024B B. 1MB=1024B

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

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 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

微机原理_期末考试试题答案

微机原理与接口技术考试试卷(A) 专业学号姓名成绩 一、填空题(每空1分,共20分) 1. 完成下列程序段,从240H端口读取数据,测试其是否为20H,若不是则将241H端口清0,否则转向NEXT。 MOV DX , (1) (2) AL, DX (3) AL, 20H (4)______ MOV DX,(5) MOV AL,0 OUT DX,AL ….. NEXT: …… 2. 图1中的一个共阴极数码管通过8255A和系统ISA总线相连,请完成下列程序段,使该数码管稳定显示“8”(字型编码为7FH)。 图1 MOV DX, (6) MOV AL, (7) OUT DX, AL ;初始化82C55 MOV DX, (8) MOV AL, (9) (10) ;数码管稳定显示“8” 3..8086 CPU有条地址线,可形成的存储器地址空间,地址范围为。 4..中断类型号为24H的中断向量存放在开始的存储单元。 5..一台微机的地址总线为16条,其RAM存储器容量为16KB,首地址为2000H,且地址是连续的,则可用的最高地址是________。 6..一个数据的有效地址EA = 1234H,且DS =5678H,则该数据在内存中的物理地址是________,该数据段的首单元的物理地址是________,末单元的物理地址是________。 7.若当前堆栈指针SP指向2006H单元,则向堆栈中压入5个字的内容后,SP应指向________。8.若8086 CPU引脚状态是M/IO=1,RD=1,WR=0,则此时执行的操作是________。

二、综合题(80分) 1.(10分) 一个异步串行通信口,通过TXD发送一帧数据的字符格式如图2的实线所示: 图2 如果线路上传送的字符格式包括7位ASCII码数据,一位奇偶校验位,一位停止位。要求:(1) 写出该帧字符所传送的数据值,并说明是奇校验还是偶校验。(2) 如果波特率为600bps,请计算传送上面这一帧数据所需要的时间。(3) 若波特率系数K=16,请计算发送时钟频率TXC的频率值。 2. (10分) 图3为两级译码构成口地址译码电路,PS输出低电平为片选信号。试问 图3 图4 (1) 开关K上合,PS的寻址范围是________。(2) 开关K下合,PS的寻址范围是________。 (3) 开关K下合,A3改接B,A4改接A,则PS的寻址范围是________________。 (4) 请用二进制表示法写出图4的译码电路所决定的端口地址。 3. (20分) 某系统外接电路如图5,8255A口地址为2F0H~2F3H,请设计源程序,一次性 的测试开关的位置,当K闭合时,LED亮,K断开时LED灭(提示:C口高4位应为方式0输入,低4位为方式0输出)。 图5 CODE SEGMENT ASSUME CS:CODE BEG: ;C口初始化 ;读C口

微机原理课后答案

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__________引脚。

微机原理试题及答案

微机原理试题及答案 Revised as of 23 November 2020

学年第学期微机原理及应用(A)课程试卷 卷16 班级姓名得分任课教师 一、选择题:(每题分,共18分) 1、DMAC向CPU发出请求信号,CPU响应并交出总线控制权后将( )。 反复执行空操作,直到DMA操作结束 进入暂停状态, 直到DMA操作结束 进入保持状态, 直到DMA操作结束 进入等待状态, 直到DMA操作结束 2、有一个实时数据采集系统,要求10ms进行一次数据采集,然后进行数据处理及显示输出,应 采用的数据传送方式为()。 无条件传送方式查询方式 中断方式直接存储器存取方式 3、在数据传送过程中,数据由串行变并行,或由并行变串行的转换可通过()来实现。 计数器寄存器移位寄存器 D触发器 4、8088 CPU输入/输出指令可寻址外设端口的数量最大可达()个。 128 256 16K 64K 5、CPU响应中断后,通过()完成断点的保护。 执行开中断指令执行关中断指令 执行PUSH指令内部自动操作 6、并行接口芯片8255A具有双向数据传送功能的端口是()。 PA口 PB口 PC口控制口 7、8088CPU处理动作的最小时间单位是()。 指令周期时钟周期机器周期总线周期

8.堆栈是内存中()。 先进先出的ROM区域后进先出的ROM区域 先进先出的RAM区域后进先出的RAM区域 9、计算机中广泛应用的RS-232C实质上是一种()。 串行接口芯片串行通信规程(协议) 串行通信接口标准系统总线标准 5--1 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 SRAM DRAM ROM EPROM 11、鼠标器是一种()。 手持式的作图部件手持式的光学字符识别设备 手持式的座标定位部件手持式扫描器 12、传送速度单位“bps”的含义是()。 b ytes per second bits per second baud per second billion bytes per second 二、填空题:(每空1分,共12分) 1、CPU在响应中断后,自动关中。为了能实现中断嵌套,在中断服务程序中,CPU必须在 后,开放中断。 2、在计算机运行的过程中,有两股信息在流动,一股是,另一股则是。 3、指令MOV BX,MASK[BP]是以作为段寄存器。 4、指令REPE CMPSB停止执行时,表示找到或。 5、设CF=0,(BX)= 7E15H,(CL)= 03H,执行指令 RCL BX,CL后, (BX)= , (CF)=,(CL)=。 6、在8088 CPU中,一个总线周期是。 7、8253定时/计数器有个独立的16位计数器,每个计数器都可按二进制或 来计数。 三、程序设计(共40分)

微机原理习题解答

第一章微型计算机的基础知识 1-1 将下列十进制数转换为二进制数、十六进制数。 (1)110 (2)1 039 (3)0.75 (4)0.156 25 1-2 将下列十进制数转换为BCD 码。 (1)129 (2)5 678 (3)0.984 (4)93.745 1-3 将下列二进制数转换为十进制数、十六进制数。 (1)10101010 (2)10000000 (3)11000011.01 (4)01111110 1-4 将下列十六进制数转换为二进制数、十进制数。 (1)8E6H (2)0A42H (3)7E.C5H (4) 0F19.1DH 1-5 将下列二进制数转换为BCD 码。 (1)1011011.101 (2)1010110.001 1-6 将下列BCD 码转换为二进制数。 (1)(0010 0111 0011) BCD (2)(1001 0111.0010 0101) BCD 1-7 完成下列二进制数的运算。 (1)1001.11+11.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)1111+1101 1-8 完成下列十六进制数的运算。 (1)6AH+0A6H (2)0AB1FH+0EFCH (3)12ADH-1DEH (4)117H-0ABH 1-9 已知X=01H,Y=0FFH ,在下面的情况下比较两数的大小。 (1)无符号数 (2)符号数 (均为补码) 1-10 计算下列各表达式。 (1)101+‘A’+01101001B+0D5H+57Q (2)127.8125+10111101.101+375.63Q+1FC.8AH 1-11 写出下列字符串的ASCII 码。 (1)HELLO (2)A8=

微型计算机原理与应用试题库答案

《微型计算机原理及应用》试题库及答案 一、填空 1.数制转换 A)125D=(0111 1101 )B =(175 )O=(7D )H=(0001 0010 0101 )BCD B)10110110B=(182 )D =(266)O=(B6 )H=(0001 1000 0010)BCD 2.下述机器数形式可表示的数值范围是(请用十进制形式写出):单字节无符号整数0~ 255 ;单字节有符号整数-127 ~127 。 (注:微型计算机的有符号整数机器码采用补码表示,单字节有符号整数的范围为-128~+127。)3.完成下列各式补码式的运算,并根据计算结果设置标志位SF、ZF、CF、OF。指出运算结果 有效否。 A)00101101+10011100=11001001B SF=1 ZF=0 CF=0 OF=0 B)11011101+10110011=10010000B SF=1 ZF=0 CF=1 OF=0 4.十六进制数2B.4H转换为二进制数是_0010 1011.0100B ,转换为十进制数是_43.25。 5.在浮点加法运算中,在尾数求和之前,一般需要操作,求和之后还需要进行和 舍入等步骤。 6.三态门有三种输出状态:低电平、高电平、高阻态状态。 7.字符“A”的ASCII码为41H,因而字符“E”的ASCII码为45H ,前面加上偶 校验位后代码为。 8.数在计算机中的二进制表示形式称为机器数。 9.在计算机中,无符号书最常用于表示。 10.正数的反码与原码相等。 11.在计算机中浮点数的表示形式有整数和小数两部分组成。 12.微处理器中对每个字所包含的二进制位数叫字节。 13.MISP是微处理的主要指标之一,它表示微处理器在1秒钟内可执行多少

微机原理(第三版)课后练习答案(DOC)

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.指令队列缓冲器

微机原理复习题

一、填空题 1.二进制数101101.10B转换成十进制数为____45.5____D,转换成十六进制数为_____2D.8_____H。 2.7 3.25D=__01001001.01___B, 10010010B=___92___H ,100101.11B= ___37.75D____D 3.字长为8位,设x=-46, y=117,则[x] 补=__11010010B___,[y] 补 =__01110101B。 4.设字长为8位,有x= -1,y=124,则有:[x+y] 补=__1001111001B__, [x-y] 补 =_110000101B_。 5.8086的指令队列缓冲器有___8_____字节。 6.机器数常用的编码方式有___原码____、___反码____和____补码____。 7.对存储芯片6116进行读操作,6116引脚=__0____, =__1____, =___0___。 8.标号是某条指令所在存储单元的逻辑地址,它具有三种属性,分别是_段属性__、偏移量属性和类型属性。 9.变量具有三种属性,分别是段属性、____偏移属性和类型属性。 10. 80x86 CPU通常从___HOLD___接收总线请求信号,若其同意放弃总线控制权,则将从___HLDA____引脚发出总线响应信号。 11.从功能上讲,8086CPU的结构由 __总线接口部件__ 和_执行部件___ 两部分组成。 12.微型计算机的基本组成包括:___运算器______ 、____控制器____ 、_存储器______ 、____输入设备_____ 和 __输出设备___ 五部分。 13.8086CPU的数据总线有___16__条,地址总线有__20__条,可寻址的地址空间为___1MB___。 14.在汇编语言程序设计中有三种程序设计方法,它们分别是_顺序结构____、__分支结构___、__循环结构___。 15.微型计算机软件系统包括___应用软件__和__系统软件____两部分。 16.子程序又称____过程___,由伪指令___PROC___定义,以___ENDP___结束,属性可以是___NEAR____或___FAR___ ,与调用程序在同一代码段中的子程序,使用___NEAR____属性,而和调用程序不在同一代码段中的子程序使用___FAR____属性。

相关主题