文档库 最新最全的文档下载
当前位置:文档库 › 微机原理习题答案3

微机原理习题答案3

微机原理习题答案3
微机原理习题答案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=BAFFFH

3.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=3F12DH

3.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=0

3.18 某个数为全0,它的零标志位为0吗?(题目不好,应该改为:某指令执行后,其结果为全0,它的零标志位为0吗?)

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

3.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+2

3.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采用了分时复用技术。

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

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

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

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

3.29 当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时钟信号组合输出各种总线控制信号。

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

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

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

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

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

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

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

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

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

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

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

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

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

解:寻址方式即寻找操作数的方式。主要的寻址方式有:固定寻址、立即数寻址、寄存器寻址、

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

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

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

3.37 指出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)寄存器基址加变址间接寻址

3.38 指出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

3.39 指出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位,数据类型不匹配

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

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

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

MOV AX,0ABCH ;A X= 0ABCH

DEC AX ;A X= 0ABBH

AND AX,00FFH ;A X= 00BBH

MOV CL,4 ;C L= 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

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

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

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

解:MOV BX,DA TA ;DATA是字变量名,指令功能是把DATA变量的内容→BX MOV BX,0FFSET DA TA ;把DA TA变量的段内偏移地址→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

3.45 假定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)L A=1000:00FAH~1000:00FFH

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

PUSH AX

PUSH BX

POP AX

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

3.47 某程序段为

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

。。。

2000H:307EH JNE ABC

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

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

3.48 若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指令中,将A L- 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指令的功能不同,应用的地方也不同,应该说没有可比性。在二者都可用时,带有OFFSET的MOV指令的效率更高,因为在源程序汇编时已完成OFFSET处理。带有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、A X←(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 AX,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和W AIT存储单元中的内容相“与”,结果存入WAIT。

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

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

(5)AND [BP],CX (6)AND [W AIT],AL

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

中。

解:AND DH,1FH

MOV BH,DH

3.79 用“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

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

MOV SI,DI

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

8、9位取反。

解:OR AX,000FH

AND AX,1FFFH

XOR AX,0380H

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

(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

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

令?

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

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

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

解:(1)段内近转移

(2)段内短转移

(3)段间远转移

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

解:近转移只需修改IP寄存器内容,而远转移不光要修改IP值还要修改段寄存器CS的内容。

3.85 试比较JMP [DI]与JMP FAR PTR[DI]指令的操作有什么区别?

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

3.86用串操作指令设计实现如下功能的程序段:先将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

3.87在使用条件转移指令时,特别要注意它们均为相对转移指令,请说明“相对转移”的含义

是什么?如果要向较远的地方进行条件转移,那么,此程序应如何设置?

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

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

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

值是多少?

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

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

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

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

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

3.90 INT 40H指令的中断向量存储在哪些地址单元?试用图解说明中断向量的含义和具体内

容,并指出它和中断入口地址之间是什么关系?

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

微机原理习题集以及答案

第一部分 例题与习题 第1章 微型计算机基础 例 题 1.把十进制数转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 2 | 68 × 2 2 | 34 2 | 17 × 2 2 | 8 2 | 4 × 2 2 | 2 1 高位 低 位 (137)10=()2 10=2 所以,10=(.111)2 2.把二进制数转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 1)2=(010 100)2=8 (1 2=(0001 2=16 3.将八进制数转换为二进制数。P9 解:8=(010 100)2=2 4.X=,Y=-,求[X -Y]补,并判断是否有溢出P11 解:[X -Y]补=[X]补+[-Y]补 [X]补= [Y]补= [-Y]补= + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 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.docx

长沙理工A 一、填空题(每空1分,共20分) 1、完成下面不同数制之间的转换 73.25D= ____________ B, 10010010B = ____________ H 100101.11B = __________ D= ___________ BCD 2、指令MOV AL, BL对源操作数来说是 ____________ 寻址方式, MOV AX, [BX+6]对源操作数来说是___________ 寻址方式, MOV AX, DS:[2000H]对源操作数来说是 __________ 寻址方式。 3、8088CPU的地址总线有____________ 条,最大内存空间为 ___________ ,物理地址是ftl _________ 和_________ 形成的o 4、在8088系统中五片中断控制器8259可控制____________ 个中断源。 5、执行INT 04H后,中断服务程序入口地址的CS在_________ , ____ 单元,IP在______ , _____ 单元中。 6、串行通信有两种基本的通信方式,分别是____________ 和_________ 。 7、8255有两个控制字,它们分别是__________ 和 _________ o 二、选择题(单项选择,每题2分,共20分) 1 >卜列8086CPU标志寄存器FR的标志中,不属于状态标志的是() A.OF B.PF C.IF D.CF 2、在数据传输率相同的情况下,同步字符串送的速度高于异步字符传输,其原因是() A.字符间无间隔 B.双方通信同步 C.发生错谋的概率少 D.附加位信息总量少 3、在CMPAX, DX指令执行后,当标志位SF, OF, ZF满足逻辑关系(SF十OF) +ZF=0 时,表明()o A. AX >DX B. AX

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空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单片机中,

微机原理习题及答案

一、选择 1、在微型计算机中,微处理器的主要功能是进行( )。 D A、算术运算 B、逻辑运算 C、算术、逻辑运算 D、算术、逻辑运算及全机的控制 2、Pentium I属于()位CPU C A、16 B、8 C、32 D、64 3、Intel 8086属于()位CPU A A、16 B、8 C、32 D、64 4、CPU与I/O设备间传送的信号通常有( ) D A、控制信息 B、状态信息 C、数据信息 D、以上三种都有 5、存储器用来存放计算机系统工作时所需要的信息,即( )。 D A、程序 B、数据 C、技术资料 D、程序和数据 6、运算器的核心部件是( )。 D A、加法器 B、累加寄存器 C、多路开关 D、算逻运算单元 二、填空 1、内存可分为2大类:随机存储器RAM 和 2、数据总线是向的,地址总线是向的。 3、计算机的五大部件是:、、、、输出设备 4、总线可分为三类:、、 5、存储程序工作原理最先由提出 6、在计算机内部,一切信息的存取、处理和传送都是以形式进行的。 1、只读存储器ROM 2、双、单 3、运算器、控制器、存储器、输入设备 4、地址总线、数据总线、控制总线 5、冯·诺依曼 6、二进制 三、简答 1、冯·诺依曼型计算机的特点是什么? (1).以二进制表示指令和数据 (2).程序和数据存放在存储器中,从存储器中取指令并执行 (3).由运算器、控制器、存储器、输入设备、输出设备构成计算机硬件系统。 一、选择 1、在机器数______中,零的表示形式是唯一的()。BD A、原码 B、补码 C、反码 D、移码 2、计算机内部表示带符号整数通常采用()。C A、原码 B、反码 C、补码 D、移码

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

《微机原理及应用》试题库 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, V1D. MOV2000H, V2 9. –49D 的二进制补码为A。

微机原理-期末考试题库及答案(含3套试卷)

微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O访问,当CPU执行IN AL,DX 指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。 A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发(2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个

⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是(2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF 11.8086 系统中内存储器地址空间为1M,而在进行I/O读写是,有效的地址线是( ) A . 高16位 B. 低16位 C. 高8位 D. 低8位 12.8086 CPU中段寄存器用来存放( ) A. 存储器的物理地址 B. 存储器的逻辑地址 C. 存储器的段基值 D. 存储器的起始地址 13.8259A可编程中断控制器的中断服务寄存器ISR用于( ) A.记忆正在处理中的中断 B. 存放从外设来的中断请求信号 C.允许向CPU发中断请求 D.禁止向CPU发中断请求 14.8253 可编程定时/计数器的计数范围是( ) A. 0-255 B. 1-256 C. 0-65535 D. 1-65536 15. 在8086中,(BX)=8282H,且题中指令已在队列中,则执行INC [BX]指令需要的总

《微机原理》复习题及解答

微机原理》复习题解答 1、在8086/8088系统中,存储器是怎样组织的?整个存储空间有多大?最大逻辑长度为多大?至少可将存储器分为多少个段?段起始于什么位置?偏移地址是什么?怎样计算20位物理地址? ①分段组织②1兆字节③64K字节④至少分成16段⑤起始于最后四位二进制数都为0的位置⑥偏移地址是相当于段起始位置的偏移量⑦段地址×16+偏移地址 2、系统总线分为哪几组?各自传送的方向如何? ①分成3组:数据部线、地址总线、控制总线②数据总线和控制总线都是双向的,地址总线始终由CPU发出 3、8086微处理器分为哪几个部分?它们之间采用什么工作方式?其中状态寄存器由几类标志组成?与中断有关的是哪一位? ①分成2部分:总线接口部件、执行部件②并行工作方式③2类:状态标志、控制标志④IF 位,IF置1,响应外部可屏蔽中断 4、怎样将8086设置为最小或最大模式?分别应配置哪些外围器件?作用怎样?最大模式与最小模式的配置相比多了什么器件?作用是什么? ①引脚接高电平则设置为最小模式,如接低电平则设置为最大模式②最小模式下:1片8248A,作为时钟发生器;3片8282或74LS373,用来作为地址锁存器;2片8286/8287作为总线收发器。最大模式下:1片8284A,3片8282,2片8286,1片8288总线控制器,1片8259A及有关电路③8284A除了提供频率恒定的时钟信号外,还对准备发(READY)和(RESET)信号进行同步。8282:地址/数据总线是复用的,而和S7也是复用的,所以在总路线周期前一部分时间中输出地址信号和信号的引脚,在总线周期的后一部分时间中改变了含义。因为有了锁存器对地址和进行锁存,所以在总线周期的后半部分,地址和数据同时出现在系统的地址总线和数据总线上;同样,此时也在锁存器输出端呈现有效电平,于是确保了CPU对存储器和I/O端口的正常读/写操作。8286/8287:当系统中所连的存储器和外设较多时,需要增加数据总线的驱动能力。④多了1片8288。作用:对CPU 发出的S0,S1,S2控制信号进行变换和组合,以得到对存储器和I/O端口的读/写信号和对锁存器8282及对总线收发器8286的控制信号。 5、8086/8088系统中为什么将数据与地址总线复用? 因为数据线与地址线传送时间不一样,在总线周期T1传送地址,其他时刻传送数据,传送数据和地址时间是分离的,所以8086/8088系统中能将数据线与地址线复用。 6、CPU从奇地址或偶地址读写一个字(或字节)时,和A0是什么电平?分别用几个总线周期? A0 操作总线周期 0 0 从偶地址开始读/写一个字1个 1 0 从偶地址单元或端口读/写一个字节1 个 0 1 从奇地址单元或端口读/写一个字节1个 1 1 0 从奇地址开始读/写一个字2个(在第一总线周期,将低8位数据送到AD15—AD8,在第二个总线周期,将高8位数据送到AD7—AD0) 7、CPU的READY和RESET信号有什么作用?

(完整版)微机原理及接口技术(习题答案)

范文范例学习指导 第1章微机运算基础 习题和思考题 1.请完成以下计算: 174.66D=(10101110.10101)B=(AE. A8)H 10101110101.01011B=(1397.344)D=(575.58)H 4BCH=(010*********)B=()BCD 2.设字长为8位,X=(2A)16,当X分别为原码、补码、反码和无符号数的时候,其真值 是多少? 答:当X表示原码时,其真值为:+101010 当X表示补码时,其真值为:+101010 当X表示反码时,其真值为:+101010 当X表示无符号数数时,其真值为:00101010 3.设字长为8位,用补码形式完成下列计算,要求有运算结果并讨论是否发生溢出? 120+18 -33-37 -90-70 50+84 答:120+18 其补码形式分别为:(120)补=01111000 (18)补=00010010 01111000 + 00010010 10001010 由于C s=0 ,C p=1,因此有溢出,结果错误 -33-37 其补码形式为:(-33)补=11011111 (-37)补=11011011 11011111 +11011011 10111010 由于C s=1, C p=1,所以没有溢出,结果正确 -90-70 其补码形式为:(-90)补=10011100 (-70)补=10111010 10011100 +10111010 01010110 由于C s=1, C p=0,所以有溢出,结果错误 50+84

其补码形式为:(50)补=00110010 (84)补=01010100 00110010 +01010100 10000110 由于C s=0, C p=1,所以有溢出,结果错误 4.请写出下列字符串的ASCII码值。 My name is Zhang san. 4D 79 6E 61 6D 65 69 73 5A 68 61 6E 67 73 61 6E 2E 第2章 80X86微机系统 习题与思考题 1.微型计算机主要由哪些基本部件组成?各部件的主要功能是什么? 答:微型计算机主要由输入设备、运算器、控制器、存储器和输出设备组成。 各部件的功能分别是:1、输入设备通过输入接口电路将程序和数据输入内存;2、运算器是进行算术运算和逻辑运算的部件,它是指令的执行部件;3、控制器是计算机的指挥中心,它负责对指令进行译码,产生出整个指令系统所需要的全部操作的控制信号,控制运算器、存储器、输入/输出接口等部件完成指令规定的操作;4、存储器用来存放程序、原始操作数、运算的中间结果数据和最终结果数据; 5、输出设备是CPU通过相应的输出接口电路将程序运行的结果及程序、数据送到的设备; 2.微处理器的发展过程是什么? 答:微型计算机的发展过程是: 第一代(1946~1957)——采用电子管为逻辑部件,以超声波汞延迟线、阴极射线管、磁芯和磁鼓等为存储手段;软件上采用机器语言,后期采用汇编语言。 第二代(1957~1965)——采用晶体管为逻辑部件,用磁芯、磁盘作内存和外存;软件上广泛采用高级语言,并出现了早期的操作系统。 第三代(1965~1971)——采用中小规模集成电路为主要部件,以磁芯、磁盘作内存和外存;软件上广泛使用操作系统,产生了分时、实时等操作系统和计算机网络。 第四代(1971~至今)——采用大规模集成电路(LSI)、超大规模集成电路(VLSI)为主要部件,以半导体存储器和磁盘为内、外存储器;在软件方法上产生了结构化程序设计和面向对象程序设计的思想。 3.简述80486微处理器的基本结构。 书12页 4.80486微处理器的工作模式有几种?当CS内容为1000H,IP内容为7896H,求在实地址 模式下的物理地址为多少? 答:实模式和保护模式及虚拟8086模式。当CS内容为1000H,IP内容为7896H,在实地

微机原理习题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)

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

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

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

《微机原理及应用》试题库 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分,共20分) 1.8086CPU由两个独立的工作单元组成,它们是执行单元EU和( ). A)总线控制逻辑器B)内部通信寄存器 C)指令寄存器D)总线接口单元 2.8086系统若用256KB*1动态存储器芯片可望构成有效存储系统的最小容量是( ). A)256KB B)512KB C)640KB D)1MB 3.Intel8255A使用了()个端口地址。 A)1 B)2 C)3 D)4 4.PC机中为使工作于一般全嵌套方式的8259A中断控制器能接受下一个中断请求,在中断服务程序结束处就( ). A)发送OCW2指令B)发送OCW3指令C)执行IRET指令D)执行POP指令5.RAM是随机存储器,它分为( )两种. A)ROM和SRAM B)DRAM和SRAM C)ROM和DRAM D)ROM和CD-ROM 6.在程序运行过程中,确定下一条指令的物理地址的计算表达式是() A)CS×16+IP B)DS×16+SI C)SS×16+SP D)ES×16+DI 7.( )是以CPU为核心,加上存储器,I/O接口和系统总线构成的. A)微处理器B)微型计算机C)微型计算机系统D)计算机 8.对于掉电,8086/8088CPU是通过( )来处理的. A)软件中断B)可屏蔽中断C)非屏蔽中断D)DMA 9.计算机的存储器采用分级存储体系的主要目的是()。 A)便于读写数据B)减小机箱的体积 C)便于系统升级D)解决存储容量、价格和存取速度之间的矛盾 10.8259A的OCW1----中断屏蔽字( )设置. A)在ICW之前B)只允许一次C)可允许多次D)仅屏蔽某中断源时11.将十六进制数163.5B转换成二进制数是)( ) A)1101010101.1111001 B)110101010.11001011 C)1110101011.1101011 D)101100011.01011011 12.Intel 8086/8088微处理器有()地址线,直接寻址内存空间的范围是()。A)10条,64KB B)20条,64KB C)16条,1M D)20条,1M 13.Intel 8086/8088微处理器的标志寄存器中,作为记录指令操作结果的标志是()。 A)CF,OF,PF,AF,SF,ZF B) CF,PF,ZF,SF C) OF,DF,IF,SF,ZF,CF D) IF,DF,OF,CF 14.下述对标志寄存器中标志位不产生影响的指令是()。 A)JMP NEXT B) TEST AL,80H C) SHL AL,1 D) INC SI 15.简单的汇编语言程序可以通过()来建立、修改和执行。 A)连接程序B) 调试程序C) 汇编程序D) 编辑程序 16.累加器AL中的内容是74H,执行CMP AL,47H指令后,累加器AL中的内容是()A)2DH B)0D3H C)00H D)74H 17.LINK程序执行后可以生成一个以()为扩展名的文件。 A).COM B).EXE C).OBJ D).LST 18.在8086/8088汇编语言源程序中,两个有符号的整数A和B比较后为了判断A是否大

微机原理习题集以及答案

1 第一部分 例题与习题 第1章 微型计算机基础 1.1 例 题 1.把十进制数137.875转化为二进制数。P7 解:把十进制数转换成二进制数时,需要对一个数的整数部分和小数部分分别进行处理,得出结果后再合并。 整数部分:一般采用除2取余法 小数部分:一般采用乘2取整法 余数 低位 整数 高位 2 | 137 0.875 2 | 68 × 2 2 | 34 1.750 2 | 17 × 2 2 | 8 1.500 2 | 4 × 2 2 | 2 1.000 1 高位 低位 (137)10=(10000111) 2 (0.875)10=(0.1101)2 所以,(137.875)10=(10001001.111)2 2.把二进制数10011.0111转换为八进制数和十六进制数。P9 解:八进制、十六进制都是从二进制演变而来,三位二进制数对应一位八进制数,四位二进制数对应一位十六进制数,从二进制向八进制、十六进制转换时,把二进制数以小数点为界,对小数点前后的数分别分组进行处理,不足的位数用0补足,整数部分在高位补0,小数部分在低位补0。 (10 011.011 1)2=(010 011.011 100)2=(23.34)8 (1 0011.0111)2=(0001 0011.0111)2=(13.7)16 3.将八进制数23.34转换为二进制数。P9 解:(23.34)8=(010 011.011 100)2=(10011.0111)2 4.X=0.1010,Y=-0.0111,求[X -Y]补,并判断是否有溢出?P11 解:[X -Y]补=[X]补+[-Y]补 [X]补=0.1010 [Y]补=1.1001 [-Y]补=0.0111 0.1010 0.0111 1.0001 + -------------- 1 -------------- 0 -------------- 0 -------------- 1 -------------- 0 -------------- 0 -------------- 0 -------------- 1 ------------- 1 ------------- 1 ------------- 1

微机原理与接口技术 试题与答案

微机原理与接口技术试题 微型计算机原理与接口技术综合测试题一 一、单项选择题(下面题只有一个答案是正确的,选择正确答案填入空白处) 1.8086CPU通过(1 )控制线来区分是存储器访问,还是I/O 访问,当CPU执行IN AL,DX指令时,该信号线为(2 )电平。 (1) A. M/ B. C. ALE D. N/ (2) A. 高 B. 低 C. ECL D. CMOS 2.n+1位有符号数x的补码表示范围为()。 A. -2n < x < 2n B. -2n ≤ x ≤ 2n -1 C. -2n -1 ≤ x ≤ 2n-1 D. -2n < x ≤ 2n 3.若要使寄存器AL中的高4位不变,低4位为0,所用指令为()。 A. AND AL, 0FH B. AND AL, 0FOH C. OR AL, 0FH D. OR AL 0FOH 4.下列MOV指令中,不正确的指令是()。 A. MOV AX, BX B. MOV AX, [BX] C. MOV AX, CX D. MOV AX, [CX] 5.中断指令INT 17H的中断服务程序的入口地址放在中断向量表地址()开始的4个存贮单元内。

A. 00017H B. 00068H C. 0005CH D. 0005EH 6.条件转移指令JNE的条件是()。 A. CF=0 B. CF=1 C. ZF=0 D. ZF=1 7. 在8086/8088 CPU中,一个最基本的总线读写周期由(1 )时钟周期(T状态)组成,在T1状态,CPU往总线上发( 2 )信息。 ⑴ A. 1个 B. 2个 C. 4个 D. 6个 ⑵ A. 数据 B . 地址 C. 状态 D. 其它 8. 8086有两种工作模式, 最小模式的特点是(1 ),最大模式的特点是( 2 )。 ⑴ A. CPU提供全部控制信号 B. 由编程进行模式设定 C. 不需要8286收发器 D. 需要总线控制器8288 ⑵ A. M/ 引脚可直接引用 B. 由编程进行模式设定 C. 需要总线控制器8288 D. 适用于单一处理机系统 9.在8086微机系统的RAM 存储单元器0000H:002CH开始依次存放23H,0FFH,00H,和0F0H四个字节,该向量对应的中断号是( )。 A. 0AH B. 0BH C. 0CH D. 0DH 10.真值超出机器数表示范围称为溢出,,此时标志寄存器中的( )位被置位 A. OF B AF C PF D CF

微机原理试题及答案

卷16 一、选择题:(每题1.5分,共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实质上是一种()。 ?串行接口芯片?串行通信规程(协议) ?串行通信接口标准?系统总线标准 10、高速缓冲存储器(CACHE)一般是由()芯片组成。 ?SRAM ?DRAM ?ROM ?EPROM 11、鼠标器是一种()。 ?手持式的作图部件?手持式的光学字符识别设备 ?手持式的座标定位部件?手持式扫描器 12、传送速度单位“bps”的含义是()。

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

微机原理期末考试试题及答案 上海应用技术学院2008—2009学年第一学期 《微机原理及应用》期末试卷A 课程代码: B203205A学分: 3.5考试时间: 100分钟 课程序号: 1958,1960 班级:学号:姓名: 我已阅读了有关的考试规定和纪律要求~愿意在考试中遵守《考场规则》~如有违反将愿接受相应的处理。 题号一二三四五六七八九十总分应得分20 10 20 15 10 1510 100实得分 试卷共页,请先查看试卷有无缺页,然后答题。 一、填空(每空1分,共20分) 1(MCS-51的EA 管脚接低电平时,CPU只能访问外部程序存储器。 2(MCS-51单片机从外部程序存储器取指令时,使用/PSEN信号作“读”信号,从外 信号作“读”信号。部数据存储器取数据时,使用/RD 3(MCS-51的堆栈设在内部RAM 中,单片机复位后SP的内容为07 H。 4. MOV A,34H中的34H是直接寻址。 MOV A,@R0中的@R0是间接寻址。 5(若PSW=98H,则选择了第3组工作寄存器,此时R7的地址是1F H。 6(MCS-51的数据总线共8位,来自P0口,地址总线共16位,来自P2和P0口。

7(8255A具有( 3 )个8位可编程I/O口。8(若串口工作于方式1,每分钟传送3000个字符,其波特率是( 500 )bit/s。 9(一个8位A/D转换器的分辨率是( 3.9 )‰。 10(若0809 U=5V,输入模拟信号电压为2.5V时,A/D转换后的数字量是( 80H )。REF 11(一个EPROM的地址有A0----A11引脚,它的容量为( 4 )KB。 12(已知1只共阴极LED显示器,其中a笔段为字形代码的最低位,若需显示数字1, 它的字形代码应为( 06H )。 第1页 二、判断题,对者划“?”,错者划“×”。(每小题1分,共10分)1((?)8051单片机的算术运算类指令执行的一般会影响标志位。2((?)8051单片机的外部数据存储器和内部数据存储器的要用不同的指令来访问。3((×)AJMP指令转移范围是-128,127之间。 4((?)DPTR可以分成高8位和低8位分别寻址。 5((×)MCS51内部定时/计数器在溢出时,都必须由软件重装初值才能按原设定值定时 /计数。 6((×)MCS-51系列单片机4个I/O端口都是多功能的。 7((?)MCS-51特殊功能寄存器的字节地址能被8整除者,可以位寻址。8.(×)并行扩展简单I/O口,对芯片的要求是:输入要锁存,输出要缓冲。((?)串行通信要求是互相通信的甲乙双方具有相同的波特率。9 10((?)8255A的PA口具有3种工作方式。

相关文档