文档库 最新最全的文档下载
当前位置:文档库 › 微机原理习题解答(供参考)

微机原理习题解答(供参考)

微机原理习题解答(供参考)
微机原理习题解答(供参考)

第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)BCD

16. 将下列二进制数分别转化为十进制数和十六进制数。

(1)10110101= 181=0B5H

(2)11001011= 203=0CBH

(3)10101.1001= 21.5625=15.9 H

(4) 101101.0101= 45.3125=2D.5H

17. 将下列十六进制数分别转化为二进制数、十进制数。

(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.125

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]补=10101010B,则[1/2X]补=1/2[X]补=11010101B

(2) 设[X]补=11010100B,则[-1/4X]补=[1/4[X]补]补=[11110101]补=00001011B

第2章习题和解答

1. 8086是多少位的微处理器?为什么?

答:8086是高性能的第三代微处理器,是Intel系列的16位微处理器。

2. EU与BIU各自的功能是什么?如何协同工作?

答:EU其主要功能是执行命令。BIU其主要功能是负责完成CPU与存储器或I/O设备之间的数据传送。

总线接口部件BIU和执行部件EU并不是同步工作的,两者的动作管理遵循如下原则:

每当8086的指令队列中有2个空字节,BIU就会自动把指令取到指令队列中。而同时EU从指令队列取出一条指令,并用几个时钟周期去分析、执行指令。当指令队列已满,而且EU对BIU又无总线访问请求时,BIU便进入空闲状态。

3. 8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?

答:8086CPU内有14个16位的寄存器。其中有4个16位通用寄存器AX、BX、CX、DX,2个16位指针寄存器SP、BP,2个16位变址寄存器SI、DI,4个16位段寄存器CS、DS、SS、ES,1个16位指令指针寄存器IP及1个16位标志寄存器FLAGS。

寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。

4. 8086对存储器的管理为什么采用分段的办法?

答:8086 CPU有20位地址总线,它可寻址的存储空间为1MB。而8086指令给出的地址编码只有16位,指令指针和变址寄存器也都是16位的,所以CPU不能直接寻址1 MB空间,为此采用分段管理。

5. 在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。

答:逻辑地址=物理地址:偏移地址;

偏移地址=相对于段起始地址的距离;

物理地址=段地址*10H+偏移地址

6. 给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求出该内存单元的物理地址。

答:物理地址=段地址*10H+偏移地址=0C00E0H+20C0H=0C21A0H

7. 8086/8088为什么采用地址/数据引线复用技术?

答:8086/8088 CPU具有40条引脚,采用分时复用地址数据总线,从而使8086/8088 CPU用40条引脚实现20位地址、16位数据、控制信号及状态信号的传输。

8. 8086与8088的主要区别是什么?

答:8086有16位数据线,8088有8位数据线。

9. 怎样确定8086的最大或最小工作模式?

答:8088/8086CPU的引脚固定接+5V时,CPU处于最小模

式下,引脚固定接地时,CPU处于最大模式下。

10. 8086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?

答:复位信号输入之后,CPU结束当前操作,并对处理器的标志寄存器、IP、DS、SS、ES寄存器及指令队列进行清零操作,而将CS设置为0FFFFH。

11. 8086基本总线周期是如何组成的?各状态中完成什么基本操作?

答:一个基本的总线周期由4个T状态组成,我们分别称为T1-T44个状态,在每个T状态下,CPU完成不同的动作。

T1状态:根据IO/M确定对存贮器或I/O操作,20位地址A0~A19信号有效,地址锁存信号ALE有效,给出DT/R信号控制8286数据传输方向。

T2状态:高四位地址/状态线送出状态信息S3~S6,低16位地址/数据线浮空,为下面传送数据准备;

WR或RD有效,表示要对存贮器/I/O端口进行读或写;有效,使得总线收发器(驱动器)可以传输数据。

T3状态:从存贮器或者I/O端口读出的数据送上数据总线(通过

)。

Tw状态:若存贮器或外设速度较慢,不能及时送上数据的话,则通过READY线通知CPU,CPU在

的前沿(即

结束末的下降沿)检测READY,若发现READY=0,则在结束后自动插入1个或几个,并在每个

的前沿处检测READY,等到READY变高后,则自动脱离进入。

T4状态:在与

(或)的交界处(下降沿),采集数据,使各控制及状态线进入无效。

13. 8086中断分哪两类?8086可处理多少种中断?

答:中断共分为两类:硬件中断和软件中断,8086可处理256种中断。

14. 8086可屏蔽中断请求输入线是什么?“可屏蔽”的涵义是什么?

答:硬件中断又可分为两类:可屏蔽中断和不可屏蔽中断。不可屏蔽中断:由NMI引脚引入,它不受中断允许标志IF的影响,每个系统中仅允许有一个,都是用来处理紧急情况的,如掉电处理。这种中断一旦发生,系统会立即响应;可屏蔽中断:由INTR引脚引入,它受中断允许标志IF的影响,也就是说,只有当IF=1时,可屏蔽中断才能进入,反之则不允许进入。

15.中断向量表的功能是什么?已知中断类型码分别是84H和0FAH,它们的中断向量应放在中断向量表的什么位置?

答:中断向量表存放的是各中断程序的入口地址即16位偏移地址和16位段地址,只要给出中断类型码,可以算出中断程序在中断向量表的什么位置:

中断向量表地址=中断类型码*4

中断向量表地址1=84H*4=210H

中断向量表地址2=0FAH*4=3E8H

第3章习题和解答

1. 简要分析8086的指令格式由哪些部分组成,什么是操作码?什么是操作数?寻址和寻址方式的含义是什么?8086指令系统有哪些寻址方式?

答:指令由操作码和操作数两部分组成,操作码表示计算机执行某种指令功能,操作数表示操作中所需要的数据或者数据所在存储单元的地址。

寻址方式是寻找操作数或操作数地址的方式。

8086提供了七种寻址方式:立即寻址、寄存器寻址、直接寻址、寄存器间接寻址、相对寄存器寻址、基址变址寻址和相对基址变址寻址方式。

2. 设(DS)=2000H,(ES)= 2100H,(SS)= 1500H,(SI)= 00A0H,(BX)= 0100H,(BP)= 0010H,数据变量V AL 的偏移地址为0050H,请指出下列指令的源操作数字段是什么寻址方式?它的物理地址是多少?

(1) MOV AX,21H 立即寻址物理地址无

(2) MOV AX,BX 寄存器寻址物理地址无

(3) MOV AX,[1000H] 直接寻址物理地址=2000H*10H+1000H=21000H

(4) MOV AX,V AL 直接寻址物理地址=2000H*10H+0050H=20050H

(5) MOV AX,[BX] 寄存器间接寻址物理地址=2000H*10H+0100H=20100H

(6) MOV AX,ES:[BX]寄存器间接寻址物理地址=2100H*10H+0100H=21100H

(7) MOV AX,[BP]寄存器间接寻址物理地址=1500H*10H+0010H=15010H

(8) MOV AX,[SI] 寄存器间接寻址物理地址=2000H*10H+00A0H=200A0H

(9) MOV AX,[BX+10H]相对寄存器寻址物理地址=2000H*10H+0100H+10H=20110H

(10) MOV AX ,V AL[BX] 相对寄存器寻址 物理地址=2000H*10H+0100H+50H=20150H (11) MOV AX ,[BX][SI] 基址变址寻址 物理地址=2000H*10H+0100H+A0H=201A0H

(12) MOV AX,V AL[BX][SI] 相对基址变址寻址 物理地址=2000H*10H+0100H+A0H+50H=201F0H 3. 给定寄存器及存储单元的内容为:(DS) = 2000H ,(BX) = 0100H ,(SI) = 0002H ,(20100) =32H ,(20101)=51H ,(20102) =26H ,(20103)= 83H ,(21200)=1AH ,(21201)=B6H ,(21202)=D1H ,(21203)=29H 。试说明下列各条指令执行完后,AX 寄存器中保存的内容是什么。

(1) MOV AX ,1200H 立即寻址 AX=1200H

(2) MOV AX ,BX 寄存器寻址 AX=0100H

(3) MOV AX ,[1200H] 直接寻址

物理地址=2000H*10H+1200H=21200H AX=0B61AH (4) MOV AX ,[BX] 寄存器间接寻址 物理地址=2000H*10H+0100H=20100H AX=5132H (5) MOV AX ,1100H[BX] 相对寄存器寻址

物理地址=2000H*10H+0100H+1100H=21200H AX=0B61AH

(6) MOV AX ,[BX][SI] 基址变址寻址

物理地址=2000H*10H+0100H+02H=20102H AX=8326H

4. 试说明指令MOV BX,10H[BX]与指令LEA BX,10H[BX]的区别

答:MOV BX,10H[BX] BX=物理地址为(DS*10H+BX+10H)2字节单元的内容

LEA BX,10H[BX] BX= BX+10H(地址)

5. 假设(DS)=3000H,(CS)=1000H,(IP)=1500H,(BX)=1000H,位移量大DATA=50H (31000H)=1250H,

(31050H)=2400H,(31052H)=6000H 。确定下列转移指令的转移地址

(1) JMP 2500H IP =2500H CS=1000H CS 段指令物理地址=1000H*10H+2500H=12500H (2) JMP BX IP=BX=1000H CS=1000H CS 段指令物理地址=1000H*10H+1000H=11000H (3) JMP WORD PTR[BX] DS 段物理地址=3000H*10H+1000H=31000H

IP=(31000H)=1250H CS=1000H: CS 段指令物理地址=1000H*10H+1250H= 11250H (4) JMP DWORD PTR[BX+DATA] DS 段物理地址=3000H*10H+1000H+50H=31050H

IP=(31050H)=2400H CS=(31052H)=6000H CS 段指令物理地址=6000H*10H+2400H=62400H

6. 设堆栈指针SP 的初值为2500H, (AX)=1234H,(BX)=5678H 。执行指令PUSH AX 后,(SP)=?,再执行指令PUSH BX 及POP AX 之后,(SP)=? (AX)=? (BX)=? PUSH AX SP=SP-2=2500H-2=24FEH

PUSH BX SP=SP-2=24FEH-2=24FCH

POP AX SP=SP+2=24FCH+2=24FEH AX=5678H BX=5678H 7. 分析下列指令的正误,对于错误的指令要说明原因并加以改正。

(1) MOV AH ,BX 错 数据结构不同 MOV AX ,BX 或 MOV AH ,BL

(2) MOV [BX],[SI] 错 二存储单元间不允许直接传送数据 MOV AX ,[SI] MOV [BX],AX (3) MOV AX ,[SI][DI] 错 源区都为变址寄存器 MOV AX ,[BX][DI] 或MOV AX ,[BX][SI] (4) MOV MYDAT[BX][SI],ES :AX 错 段前缀应指向存储单元MOV ES :MYDAT[BX][SI],AX (5) MOV BYTE PTR[BX],1000 错 数据结构不同 MOV BYTE PTR[BX],100

(6) MOV BX ,OFFSET MAYDAT[SI] 错 MAYDAT 为符号地址 MOV BX ,OFFSET MAYDAT (7) MOV CS ,AX 错 不允许给CS 赋值 MOV DS ,AX

(8) MOV DS ,BP 错 赋值方式不对 MOV AX ,BP MOV DS ,AX

8. 设V AR1、V AR2为字变量,LAB 为标号,分析下列指令的错误之处并加以改正。 (1) ADD V AR1,V AR2 错 V AR1、V AR2为字变量(代表2个存储单元地址)

MOV AX, V AR2 ADD V AR1,AX

(2) MOV AL,V AR2 错数据结构不同MOV AX,V AR2

(3) SUB AL,V AR1 错数据结构不同SUB AX,V AR1

(4) JMP LAB[SI] 错LAB为标号地址JMP LAB

(5) JNZ V AR1 错V AR1为字变量不是标号地址JNZ LAB

9. 已知(AL)=6CH, (BL)=0A9H,执行指令ADD AL,BL后,AF、CF、OF、PF、SF、和ZF的值各为多少?

ADD AL,BL AL=6CH+ A9H=15H AF=1 CF=1 OF=0 PF=0 SF=0 ZF=0

10. 试判断下列程序执行后,(BX)=的内容。

MOV CL,5

MOV BX,01C9H BX=01C9H

ROL BX,1 BX=0392H

RCR BX,CL BX=201CH

11. 写出能够完成下列操作的8086CPU指令。

(1) 把4629H传送给AX寄存器;MOV AX, 4629H

(2) 从AX寄存器中减去3218H;SUB AX, 3218H

(3) 把BUF的偏移地址送入BX中。LEA BX, BUF

12. 根据以下要求写出相应的汇编语言指令。

(1) 把BX和DX寄存器的内容相加,结果存入DX寄存器中;ADD DX, BX

(2) 用BX和SI的基址变址寻址方式,把存储器中的一个字节与AL内容相加,并保存在AL寄存器中;

ADD AL, [BX][SI]

(3) 用寄存器BX和位移量21B5H的变址寻址方式把存储器中的一个字和(CX)相加,并把结果送回存储器单元中;ADD WORD PTR [BX+21B5H], CX

(4) 用位移量2158H的直接寻址方式把存储器中的一个字与数3160H相加,并把结果送回该存储器中;

ADD WORD PTR [2158H], 3160H

(5) 把数25H与(AL)相加,结果送回寄存器AL中。ADD AL, 25H

13. 按下列要求写出相应的指令或程序段。

(1) 使BL寄存器中的高、低四位互换;MOV CL, 4 ROL BL, CL

(2) 屏蔽AX寄存器中的b10和b5位;AND AX, 1111 1011 1101 1111B

(3) 分别测试AX寄存器中b13和b2位是否为1。

TEST AX, 0000 0000 0000 0100B 测试AX寄存器中b2位是否为1

TEST AX, 0010 0000 0000 0000B 测试AX寄存器中b13位是否为1

14. 执行以下两条指令后,标志寄存器FLAGS的六个状态为各为何值?

MOV AX,95C8H

ADD AX,8379H AX=1941H AF=1 CF=1 OF=1 PF=1 SF=0 ZF=0

15. 若(AL)=85H,(BL)=11H,在分别执行指令MUL和IMUL后,其结果是多少?

MUL BL AL*BL=85H*11H=133*17=2261→AX=08D5H(无符号数相乘)

IMUL BL AL*BL=-7BH*11H=(-123)*17= -2091→AX=0F7D5H(有符号数相乘)

第4章 习题和解答

1. 请分别用DB 、DW 、DD 伪指令写出在DATA 开始的连续8个单元中依次存放数据11H 、22H 、33H 、44H 、55H 、66H 、77H 、88H 的数据定义语句。

DATA DB 11H,22H,33H,44H,55H,66H,77H,88H DATA DW 1122H,3344H, 5566H,7788H DATA DD 11223344H, 55667788H

2. 若程序的数据段定义如下,写出各指令语句独立执行后的结果:

DSEG SEGMENT

DA TA1 DB 10H ,20H ,30H ;3个字节(数据为10H,20H,30H),地址

DA TA2 DW 10 DUP(?) ;20个字节(数据全为未知数

),地址STRING DB ‘123’

;3个字节(数据为31H,32H,33H),地址DSEG ENDS (1) MOV AL ,DA TA1 AL=10H

(2) MOV BX ,OFFSET DA TA2 BX=0003H (3) LEA SI ,STRING SI=0017H ADD BX ,SI BX=001AH MOV AL ,[SI+2] AL=33H

3. 试编写求两个无符号双字长数之和的程序。两数分别在MEM1和MEM2单元中,和放在SUM 单元。 DA TAS SEGMENT

MEM1 DD 82349678H

MEM2 DD 9876A432H

SUM DD ?

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES, DS:DA TAS

START: MOV AX, DA TAS

MOV DS, AX ;取定义的DS段的段地址→DS

LEA BX,MEM1 ;取MEM1偏移地址BX=0000H

LEA SI, MEM2 ;取MEM2偏移地址SI=0004H

LEA DI, SUM ;取SUM偏移地址DI=0008H

MOV AX, WORD PTR [BX] ;将[0000H]地址的内容9678H→AX=9678H

ADD AX, WORD PTR [SI] ;AX+[0004H]地址的内容A432H→AX=3AAAH, 有进位CF=1

MOV WORD PTR [DI], AX ;将AX的内容→偏移地址DI=0008H字单元中

INC BX ;BX=BX+1=0001H

INC BX ;BX=BX+1=0002H

INC SI ;SI=SI+1=0005H

INC SI ;SI=SI+1=0006H

INC DI ;DI=DI+1=0009H

INC DI ;DI=DI+1=000AH

MOV AX,WORD PTR [BX] ;将[0002H]地址的内容8234H→AX=8234H

ADC AX,WORD PTR [SI] ;AX+[0006H]地址的内容9876H+CF→AX=1AABH, 有进位CF=1

MOV WORD PTR [DI],AX ;将AX的内容→偏移地址DI=000AH字单元中

MOV AH, 4CH

INT 21H

CODES ENDS

END START

4. 试编写程序,测试AL寄存器的第4位是否为0?

TEST AL, 00001000B

JZ LP

5. 编写程序,将BUFFER中的一个8位二进制数转换为ASCII码,并按位数高低顺序存放在ANSWER 开始的内存单元中。

DATA SEGMENT

BUFFER DB 3CH

ANSWER DB ?, ?

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DA TA

START: MOV AX, DA TA

MOV DS, AX

MOV AL, BUFFER ;AL=3CH

MOV CL, 4

SHR AL, CL ;将AL内容右移4位AL=03H,先取高四位3

CMP AL,9 ;

JG LP1 ;若AL内容大于9,说明AL内容在A-F之间

ADD AL,30H ;否则AL内容小于9,将AL内容转换为ASCII码即AL+30H->AL

JMP LP2

LP1:ADD AL,37H ;将AL内容转换为ASCII码即AL+37H->AL(如0CH+37H=43H大写C的ASCII码)LP2:MOV ANSWER, AL ;将结果存入ANSWER第一个单元

MOV AL, BUFFER ;AL=3CH

AND AL, 0FH ; 取AL内容低四位C

CMP AL,9 ;

JG LP3 ;若AL内容大于9,说明AL内容在A-F之间

ADD AL,30H ;否则AL内容小于9

JMP LP4 ;将AL内容转换为ASCII码即AL+30H->AL

LP3:ADD AL,37H ;将AL内容转换为ASCII码

LP4:MOV ANSWER+1, AL ;将结果存入ANSWER第二个单元

MOV AH, 4CH

INT 21H

CODE ENDS

END START

6. 假设数据项定义如下:

DA TA1 DB ‘HELLO!GOOD MORNING!’

DA TA2 DB 20 DUP(?)

用串操作指令编写程序段,使其分别完成以下功能:

i. 从左到右将DATA1中的字符串传送到DATA2中;

LEA SI, DA TA1 ;SI=0000H

LEA DI, DA TA2 ;DI=0014H

MOV CX, 20 ;20个字符

REP MOVSB ; 将DATA1中的字符串传送到DATA2中

ii. 传送完后,比较DATA1和DATA2中的内容是否相同;

LEA SI, DA TA1

LEA DI, DA TA2

MOV CX, 20 ;20个字符

REPE CMPSB ;CX不为零时,字符相同继续比较,不同指令停止

JNZ STOP ;若不同-> STOP

;否则都相同

iii. 把DATA1中的第3和第4个字节装入AX;

MOV AX, WORD PTR DA TA1+2

iv. 将AX的内容存入DA TA2+5开始的字节单元中。

MOV WORD PTR DA TA2+5, AX

7. 执行下列指令后,AX寄存器中的内容是多少?

TABLE DW 10,20,30,40,50

ENTRY DW 3

MOV BX,OFFSET TABLE ;BX=0000H(地址)

ADD BX,ENTRY ;BX=0003H

MOV AX,[BX] ;AX=1E00H

8. 编写程序段,将STRING1中的最后20个字符移到STRING2中(顺序不变)。

DA TA SEGMENT

STRING1 DB “0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”;36个字符ASCII码STRING2 DB 20 DUP(?)

L EQU STRING2- STRING1 ; STRING1的长度=36

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA, ES:DA TA

START: MOV AX, DATA

MOV DS, AX

MOV ES, AX

LEA SI, STRING1 ;取STRING1串的首地址=0000H

LEA DI, STRING2 ;取STRING2串的首地址=0024H=36

MOV CX, 20

MOV AX, L ;AX=36=0024H

SUB AX, CX ;AX=36-20=0024H-0014H=0010H

ADD SI, AX ;SI=SI+AX=0000H+0010H=0010H

REP MOVSB

MOV AH, 4CH

INT 21H

CODE ENDS

END START

9. 假设一个48位数存放在DX:AX:BX中,试编写程序段,将该48位数乘2。

CODE SEGMENT

ASSUME CS:CODE

START: MOV BX, 9ABCH ;设DX AX BX=1234 5678 9ABCH

MOV AX, 5678H ;DX AX BX*2=将DX AX BX左移一次

MOV DX, 1234H

SHL BX, 1 ;BX=BX*2=3578H, CF=1

RCL AX, 1 ;AX=AX*2+CF=ACF1H, CF=0

RCL DX, 1 ;DX=DX*2+CF=2468H, CF=0

MOV AH, 4CH

INT 21H

CODE ENDS

END START

10. 试编写程序,比较AX,BX,CX中带符号数的大小,并将最大的数放在AX中。

CODE SEGMENT

ASSUME CS:CODE

START: MOV AX, -5

MOV BX, 6

MOV CX, 10

CMP AX, BX

JGE LL1

XCHG AX, BX

LL1: CMP AX, CX

JGE LL2

XCHG AX, CX

LL2: MOV AH, 4CH

INT 21H

CODE ENDS

END START

11. 若接口03F8H的状态的数据(b1)和(b3)同时为1,表示接口03F8H有准备好的8位数据,当CPU将数据取走后,b1和b3就不再同时为1了。仅当又有数据准备好时才再同时为1。

试编写程序,从上述接口读入20个数据,并顺序放在DATA开始的地址中。

DA TAS SEGMENT

DA TA DB 20 DUP(?)

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES, DS:DATAS

START: MOV AX, DA TA

MOV DS, AX

MOV CX, 20

LEA BX, DATA

MOV DX, 03F8H

LOP: IN AL, DX ;读接口状态

NOT AL ;将AL内容取反,若b1=1和b3=1取反后全为0

TEST AL, 00001010b ;判断接口03F8H的状态的数据(b1)和(b3)是否同时为1

JNZ LOP ;若相与的结果不为零表示接口没有准备好,继续读状态

IN AL, DX ;若相与的结果为零表示接口准备好;读接口数据

MOV [BX], AL ;存数据

INC BX

DEC CX

JNZ LOP ;从接口读入20个数据

MOV AH, 4CH

INT 21H

CODES ENDS

END START

12. 画图说明下列语句分配的存储空间及初始化的数据值

(1) DATA1 DB ‘BYTE’,12,12H,2 DUP(0,?,3)

(2) DATA2 DW 2 DUP(0,1,2),?,-5,256H

13. 请用子程序结构编写如下程序:从键盘输入一个二位十进制的月份数(01~12),然后显示出响应的英文缩写名。

14. 给出下列等值语句:LPHA EQU 100 BETA EQU 25 GRAMM EQU 4

试求出下列表达式的值:(1) ALPHA*100+BETA;

MOV AL, LPHA

MOV BL, 100

MOV CX, BETA

MUL BL ;AL*BL-->AX

ADD AX, CX

(2) (ALPHA + 4)*BETA-2

MOV AL, LPHA

ADD AL, 4

MOV BL, BETA

MUL BL ;AL*BL-->AX

SUB AX, 2 Array (3) (BETA/3)MOD 5;

MOV AX, BETA

MOV BL, 3

DIV BL

MOV AL, AL MOD 5

(4) GRAMM OR 3

MOV AL, GRAMM

OR AL, 3

15. 图示以下数据段在存储器中的存放形式。

DATA SEGMENT

DA TA1 DB 10H,34H,07H,09H

DA TA2 DW 2 DUP(42H)

DA TA3 DB ‘HELLO’

DA TA4 EQU 12

DA TA5 DD 0ABCDH

DA TA ENDS

16. 阅读下边的程序段,试说明它实现的功能是什么?

DATAS SEGMENT

DA TA1 DB ‘ABCDEFG’

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES, DS:DA TAS

START: MOV AX, DATAS

MOV DS, AX

MOV BX, OFFSET DA TA1 ;BX取DATA1地址, BX=0000H

MOV CX, 7

NEXT: MOV AH, 2 ;DOS功能2

MOV AL, [BX]

XCHG AL, DL ;将要显示字符的ASCII送DL

INC BX

INT 21H

LOOP NEXT ; 功能是显示字符ABCDEFG

MOV AH, 4CH

INT 21H

CODES ENDS

END START

17. 编写一程序段,把BUFFER开始的100个字节的内存区域初始化为55H、0AAH、55H、0AAH、……、55H、0AAH。

DA TAS SEGMENT

BUFFER DB 100 DUP(?)

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES, DS:DA TAS

START: MOV AX, DA TAS

MOV DS, AX

LEA BX, BUFFER ;BX取BUFFER地址, BX=0000H

MOV CX, 50

LP: MOV [BX],55H

INC BX

MOV [BX].0AAH

INC BX

DEC CX

JNZ LP

MOV AH, 4CH

INT 21H

CODES ENDS

END START

18.有16个字节,编程序将其中第2、5、9、14、15个字节内容加3,其余字节内容乘2(假定运算不会溢出)。

DATAS SEGMENT

NUM0 DB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16

L1 DB2,5,9,14,15

L2 DB1,3,4,6,7,8,10,11,12,13,16

DATAS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS

START: MOV AX, DA TAS

MOV DS, AX

LEA SI, L1

LEA DI, L2

MOV CX, 5

LP1: LEA BX,NUM0

ADD BL,[SI]

SUB BL,1

ADD BYTE PTR[BX], 3

INC SI

LOOP LP1

MOV CX, 11

LP2: LEA BX,NUM0

ADD BL,[DI]

SUB BL,1

SHL BYTE PTR[BX],1 ;左移=*2

INC DI

LOOP LP2

MOV AH,4CH

INT 21H

CODES ENDS

END START

19. 编写计算斐波那契数列前20个值的程序。斐波那契数列的定义如下:

F(0)=0,

F(1)=1,

F(N)=F(N-1)+F(N-2),N ≥ 2

DA TAS SEGMENT

F DW 0, 1, 18 DUP(?) ;此处输入数据段代码

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES, DS:DATAS

START: MOV AX, DA TAS

MOV DS, AX

LEA BX, F ;BX=0000H

MOV CX,18 ;剩余18个数

LP: MOV AX,[BX] ;AX=F(0)=0

ADD AX,[BX+2] ;AX=F(0)+F(1)=0+1=1

MOV WORD PTR[BX+4],AX ;F(2)=F(1)+F(0)=1, F(N)=F(N-1)+F(N-2) N>=2

ADD BX, 2 ;F(BX+4)=F(BX+2)+F(BX)

LOOP LP

LEA BX,F ;显示20个数据

MOV CX,20

LP1: PUSH CX

LEA SI,BUF+4

MOV CX,5

MOV AX,[BX] ;取数

LP2: MOV DX,0

MOV DI,10

DIV DI ;DXAX/DI

ADD DL,30H

MOV [SI],DL

DEC SI

LOOP LP2

LEA DX,BUF

MOV AH,9

INT 21H

ADD BX,2

POP CX

LOOP LP1

MOV AH,4CH

INT 21H

CODES ENDS

END START

20. 试编写将键盘输入的ASCII码转换为二进制数的程序。

如’1’‘2’’3’即31H 32H 33H 组合成123

DA TAS SEGMENT

NUM DW?;此处输入数据段代码

DA TAS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS

START: MOV AX,DATAS

MOV DS,AX

MOV BX,0

LP: MOV AH,1 ;单个字符输入

INT 21H

CMP AL,13 ;判断是否回车键若是退出

JZ QUIT

SUB AL,30H ;解码

MOV CX,10

MOV AH,0

XCHG AX,BX

MUL CX ;BX*10

ADD BX,AX ;BX=BX*10+AX

JMP LP

QUIT: MOV NUM,AX

MOV AH,4CH

INT 21H

CODES ENDS

END START

第5章习题和解答

1. 半导体随机存储器RAM与只读存储器ROM有何区别?它们各有哪几种类型?

2. 简述存储器的主要性能指标及目前采用较多的3级存储结构是什么?

3. 简述地址译码的两种方式,并指出它们在基本原理和适用场合上的区别。

4. 在基于8086的微计算机系统中,存储器是如何组织的?是如何与处理器总线连接的?BHE#信号起什么作用?

5. 存储器的哪一部分用来存储程序指令及像常数和查找表一类的固定不变的信息?哪一部分用来存储经常改变的数据?

6. 什么是高速缓冲存储器?在微机系统中使用高速缓冲存储器的作用是什么?

7. 存储器体系为什么采用分级结构,主要用于解决存储器中存在的哪些问题?

8. 什么是虚拟存储器?它的作用是什么?

9. 用8K×8位的静态RAM芯片组成16K×8位的存储器,地址线的高位与74LS138译码器相连,采用全译码方式产生存储芯片的片选信号。试画出存储器与CPU之间的地址线、数据线及主要控制信号线的连接图。

10. 为某8位机(地址总线为16位)设计一个32KB容量的存储器。要求采用2732芯片构成8KB EPROM区,地址从0000H开始;采用6264芯片构成24KB RAM区,地址从2000H开始。片选信号采用全译码法。

微机原理课后练习题-答案

1、 2、B 3、十,非压缩的BCD码 4、 5、微型计算机、微型计算机系统 6、,, 二、 B D B 三、 1、微型计算机系统的基本组成。 答案:以微型计算机为主体,配上相应的系统软件、应用软件和外部设备之后,组成微型计算机系统。 2、简述冯.诺依曼型计算机基本组成。 答案:冯.诺依曼型计算机是由运算器,控制器,存储器,输入设备和输出设备组成的。其中,运算器是对信息进行加工和运算的部件;控制器是整个计算机的控制中心,所以数值计算和信息的输入,输出都有是在控制器的统一指挥下进行的;存储器是用来存放数据和程序的部件,它由许多存储单元组成,每一个存储单元可以存放一个字节;输入设备是把人们编写好的程序和数据送入到计算机内部;输出设备是把运算结果告知用户。 3、什么是微型计算机 答案:微型计算机由CPU、存储器、输入/输出接口电路和系统总线构成。 4、什么是溢出 答案:在两个有符号数进行家减运算时,如果运算结果超出了该符号数可表示的范围,就会发生溢出,使计算出错。

1、4、100ns 2、Ready ,Tw(等待) 3、ALE 4、INTR 5、85010H 6、存储器或I/O接口未准备好 7、非屏蔽中断 8、指令周期 9、4 二、 1、在内部结构上,微处理器主要有那些功能部件组成 答案:1) 算术逻辑部件2) 累加器和通用寄存器组 3) 程序计数器4) 时序和控制部件 2、微处理器一般应具有那些基本功能 答案:1.可以进行算术和逻辑运算2.可保存少量数据 3.能对指令进行译码并完成规定的操作4.能和存储器、外部设备交换数据 5.提供整个系统所需的定时和控制6.可以响应其他部件发来的中断请求 3、什么是总线周期 答案:CPU通过外部总线对存储器或I/O端口进行一次读/写操作的过程;一个基本的总线周期包含4个T状态,分别称为T1、T2、T3、T4。 三、×、×、×、×、×、√、√

(完整版)微机原理复习题答案

微机原理复习大纲 复习范围: 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 。

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

第一章 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 一、选择题(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 。

微机原理试题及答案

学年第学期微机原理及应用(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”的含义是()。

微机原理课后习题答案

李伯成《微机原理》习题第一章 本章作业参考书目: ①薛钧义主编《微型计算机原理与应用——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

微机原理及接口技术课后习题及参考答案

第一章课后习题 1.1 把下列十进制数转换成二进制数、八进制数、十六进制数。 ① 16.25 ② 35.75 ③ 123.875 ④ 97/128 1.2 把下列二进制数转换成十进制数。 ① 10101.01 ② 11001.0011 ③ 111.01 ④ 1010.1 1.3 把下列八进制数转换成十进制数和二进制数。 ① 756.07 ② 63.73 ③ 35.6 ④ 323.45 1.4 把下列十六进制数转换成十进制数。 ① A7.8 ② 9AD.BD ③ B7C.8D ④ 1EC 1.5 求下列带符号十进制数的8位补码。 ① +127 ② -1 ③ -0 ④ -128 1.6 求下列带符号十进制数的16位补码。 ① +355 ② -1 1.7 计算机分那几类?各有什么特点? 1.8 简述微处理器、微计算机及微计算机系统三个术语的内涵。 1.9 80X86微处理器有几代?各代的名称是什么? 1.10 你知道现在的微型机可以配备哪些外部设备? 1.11 微型机的运算速度与CPU的工作频率有关吗? 1.12 字长与计算机的什么性能有关? 习题一参考答案 1.1 ① 16.25D=10000.01B=20.2Q=10.4H ② 35.75D=100011.11B=43.6Q=23.CH ③ 123.875D=1111011.111B=173.7Q=7B.EH ④ 97/128D=64/123+32/128+1/128=0.1100001B=0.604Q=0.C2H 1.2 ① 10101.01B=21.25D ② 11001.0011B=25.1875D ③ 111.01B=7.25D ④ 1010.1B=10.5D 1.3 ① 756.07Q=111101110.000111B=494.109D ② 63.73Q=110011.111011B=51.922D ③ 35.6Q=11101.110B=29.75D ④ 323.45Q=11010011.100101B=211.578D 1.4 ① A7.8H=167.5D ② 9AD.BDH=2477.738D ③ B7C.8D=2940.551D ④ 1ECH=492D 1.5 ① [+127] 补=01111111 ② [-1] 补 = 11111111 ③ [-0] 补=00000000 ④[-128] 补 =10000000 1.6 ① [+355] 补= 0000000101100011 ② [-1] 补 = 1111 1111 1111 1111 1.7 答:传统上分为三类:大型主机、小型机、微型机。大型主机一般为高性能的并行处理系统,存储容量大,事物处理能力强,可为众多用户提供服务。小型机具有一定的数据处理能力,提供一定用户规模的信息服务,作为部门的信息服务中心。微型机一般指在办公室或家庭的桌面或可移动的计算系统,体积小、价格低、具有工业化标准体系结构,兼容性好。 1.8 答:微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影

微机原理试题及答案

微机原理试题及答案 微机原理试题及答案 一、填空题(每空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、计算机中采用二进制数,尾符用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 1.什么是汇编语言,汇编程序,和机器语言? 答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。 汇编语言是面向及其的程序设计语言。在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。 使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。 2.微型计算机系统有哪些特点?具有这些特点的根本原因是什么? 答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。 这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。 3.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。 “存储程序控制”的概念可简要地概括为以下几点: ①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。 ②在计算机内部采用二进制来表示程序和数据。 ③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。 ④五大部件以运算器为中心进行组织。 4.请说明微型计算机系统的工作过程。 答:微型计算机的基本工作过程是执行程序的过程,也就是CPU自动从程序存放

的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的基本功能。 5.试说明微处理器字长的意义。 答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。它决定着计算机内部寄存器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。计算机的字长越大,其性能越优越。在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快。 6.微机系统中采用的总线结构有几种类型?各有什么特点? 答:微机主板常用总线有系统总线、I/O总线、ISA总线、IPCI总线、AGP总线、IEEE1394总线、USB总线等类型。 7.将下列十进制数转换成二进制数、八进制数、十六进制数。 ①(4.75) 10=(0100.11) 2 =(4.6) 8 =(4.C) 16 ②(2.25) 10=(10.01) 2 =(2.2) 8 =(2.8) 16 ③(1.875) 10=(1.111) 2 =(1.7) 8 =(1.E) 16 8.将下列二进制数转换成十进制数。 ①(1011.011) 2=(11.6) 10 ②(1101.01011) 2=(13.58) 10 ③(111.001) 2=(7.2) 10 9.将下列十进制数转换成8421BCD码。 ① 2006=(0010 0000 0000 0110) BCD ② 123.456=(0001 0010 0011.0100 0101 0110) BCD 10.求下列带符号十进制数的8位基2码补码。 ① [+127] 补 = 01111111

微机原理课后答案

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、把下列二进制数转换成十进制数、十六进制数及BCD码形式。 (1) 10110010B= (2) 01011101、101B = 解: (1) 10110010B = 178D =B2H=(00010111 1000)BCD (2) 01011101、101B =93、625D=5D.AH =(1001 0011、0110 0010 0101)BCD 2. 把下列十进制数转换成二进制数。 (1) 100D= (2) 1000D= (3) 67、21D= 解: (1) 100D = 01100100B (2) 1000D=1111101000B (3) 67、21D=1000011、0011B 3. 把下列十六进制数转换成十进制数、二进制数。 (1) 2B5H = (2) 4CD、A5H= 解: (1) 2B5H = 693D = 00101011 0101B (2) 4CD、A5H=1229.6445D=0100 11001101.10100101B 4、计算下列各式。 (1) A7H+B8H = (2) E4H-A6H = 解: (1) A7H+B8H = 15FH (2) E4H-A6H =3EH 5、写出下列十进制数的原码、反码与补码。 (1)+89 (2)-37

解: (1) [+89 ] 原码、反码与补码为: 01011001B (2) [-37] 原码= 10100101 B [-37] 反码= 11011010 B [-37] 补码=11011011 B 6.求下列用二进制补码表示的十进制数 (1)(01001101)补= (2)(10110101)补= 解: (1)(01001101)补= 77D (2)(10110101)补=-75D 7.请用8位二进制数写出下列字符带奇校验的ASCII码。 (1)C: 1000011(2)O: 1001111 (3)M: 1001101 (4)P: 1010000 解: (1)C:0 1000011 (2)O: 01001111 (3)M:11001101 (4)P: 1 1010000 8、请用8位二进制数写出下列字符带偶校验的ASCII码。 (1)+:0101011 (2)=: 0111101 (3)#:0100011(4)>: 0111110 解: (1)+:00101011 (2)=: 10111101 (3)#:10100011 (4)>: 1 0111110 9、叙述CPU 中PC的作用。 解:PC就是CPU中的程序计数器,其作用就是提供要执行指令的地址。

微机原理及接口技术课后习题答案

《微机原理与接口技术》 复习题 第1章 1.简述名词的概念:微处理器、微型计算机、微型计算机系统。 答: (1)微处理器:微处理器(Microprocessor)简称μP或MP,或CPU。CPU是采用大规模和超大规模集成电路技术将算术逻辑部件ALU(Arithmetic Logic Unit)、控制部件CU (Control Unit)和寄存器组R(Registers)等三个基本部分以及部总线集成在一块半导体芯片上构成的电子器件。 (2)微型计算机:微型计算机(Microcomputer)是指以微处理器为核心,配上由大规模集成电路制作的存储器、输入/输出接口电路及系统总线等所组成的计算机,简称微机。 (3)微型计算机系统:微型计算机系统由硬件与软件两大部分组成,分别称为硬件(Hardware)系统与软件(Software)系统。其中,硬件(Hardware)系统由CPU、存储器、各类I/O接口、相应的I/O设备以及连接各部件的地址总线、数据总线、控制总线等组成。 软件(Software)系统:计算机软件(Software)是指为运行、维护、管理、应用计算机所编制的程序及程序运行所需要的数据文档资料的总和。一般把软件划分为系统软件和应用软件。其中系统软件为计算机使用提供最基本的功能,但是并不针对某一特定应用领域。而应用软件则恰好相反,不同的应用软件根据用户和所服务的领域提供不同的功能。 2.简述名词的概念:指令寄存器、地址寄存器、标志寄存器。 答: (1)指令寄存器:指令寄存器(Instruction Register,IR)用来保存计算机当前正在执行或即将执行的指令。当一条指令被执行时,首先,CPU从存取出指令的操作码,并存入IR中,以便指令译码器进行译码分析。 (2)地址寄存器:地址寄存器(Address Register,AR)被动地接受IP传送给它的地址值(二进制地址),AR的作用是保持IP送来的地址,并且以并行方式连接输出到CPU的地址引脚上,以便CPU访问指定的存单元。 (3)标志寄存器:标志寄存器(Flags,F)是CPU中不可缺少的程序状态寄存器,因此,也称程序状态字寄存器(PSW),所谓状态是指算术或逻辑运算后,结果的状态以二进制的0或1在标志寄存器中标识出来,例如,运算结果有进位,则进位标志位CF=1,否则为0。 3.何谓IA-32处理器? 答:

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

《微型计算机原理及应用》试题库及答案 一、填空 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秒钟内可执行多少

微机原理与接口技术(第二版)课后习题答案完整版

微机原理与接口技术(第二 版)课后习题答案完整版-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

习题1 1.什么是汇编语言,汇编程序,和机器语言? 答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。 汇编语言是面向及其的程序设计语言。在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。 使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。 2.微型计算机系统有哪些特点具有这些特点的根本原因是什么 3. 答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。 这些特点是由于微型计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺基础之上。 4.微型计算机系统由哪些功能部件组成?试说明“存储程序控制”的概念。答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。 “存储程序控制”的概念可简要地概括为以下几点: ①计算机(指硬件)应由运算器、存储器、控制器和输入/输出设备五大基本部件组成。 ②在计算机内部采用二进制来表示程序和数据。 ③将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的基本含义。 ④五大部件以运算器为中心进行组织。 5.请说明微型计算机系统的工作过程。

微机原理课后习题答案

第一章 学习指导: 1.掌握十六进制、二进制、BCD(十进制数)、ASCII码 2.掌握有符号数(补码、原码)、无符号数计算机的表示方法以及表示范围 3.掌握补码运算 4.了解计算机基本组成及工作原理 5.了解新技术 6.了解计算机主要性能指标 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工作电压、制造工艺、扩展能力、软件配置。 第二章 学习指导: 1.了解8086微处理器的基本组成及工作原理 2.掌握通用寄存器(AX、BX、DX、CX、SI、DI、SP、BP)段寄存器(CS、SS、DS、ES)标志寄存器(状态标志位和控制标志位含义)作用 3.掌握逻辑地址、物理地址以及它们之间的关系物理地址=段基址x16+偏移地址 4.掌握逻辑地址和物理地址表示形式2000:0100,20100 5.存储器地址的表示图2-5 6.主要引脚RD、WR、M/IO、INTR、INTA、NMI、HOLD、HLDA

微机原理复习题

一、填空题 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____属性。

相关文档
相关文档 最新文档