8086微型计算机原理与应用(吴宁)习题答案(第三章)

合集下载

微型计算机原理和接口技术第三章课后答案

微型计算机原理和接口技术第三章课后答案

微型计算机原理和接口技术第三章课后答案本文回答了微型计算机原理和接口技术第三章的课后题目,涵盖了数字逻辑电路、组合逻辑电路、时序逻辑电路和存储器等内容。

1. 数字逻辑电路1.1. 逻辑电路和数字逻辑电路的基本概念逻辑电路是由逻辑门(与门、或门、非门等)和触发器等基本逻辑元件组合而成的电路。

数字逻辑电路是逻辑电路在数字系统中的应用,主要用于实现数字信号的逻辑运算和信号的转换等功能。

1.2. 数字逻辑门电路的组合和简化数字逻辑电路中常见的逻辑门有与门(AND)、或门(OR)、非门(NOT)等。

这些逻辑门可以通过组合和简化来构造更复杂的逻辑电路,例如与非门(NAND)、或非门(NOR)等。

1.3. 数字逻辑电路的时序特性数字逻辑电路的时序特性主要包括延迟时间、上升时间和下降时间等。

延迟时间表示信号经过电路的传播所需的时间,上升时间和下降时间表示信号从一个逻辑状态到另一个逻辑状态所需的时间。

2. 组合逻辑电路2.1. 组合逻辑电路的定义和特点组合逻辑电路是由多个逻辑门组合而成的电路,输入信号直接决定输出信号,不涉及时钟信号和状态存储。

2.2. 组合逻辑电路的设计方法组合逻辑电路的设计方法主要有真值表法、卡诺图法和特征方程法。

真值表法通过列出输入输出的真值表来进行设计,卡诺图法通过画出卡诺图进行化简,特征方程法通过建立逻辑方程进行设计。

2.3. 组合逻辑电路的应用组合逻辑电路广泛应用于数字系统中,包括逻辑运算、数据选择、数据的编码和解码等功能。

3. 时序逻辑电路3.1. 时序逻辑电路的定义和特点时序逻辑电路是由触发器和组合逻辑电路组合而成的电路,通过时钟信号来控制触发器的状态转换。

时序逻辑电路具有状态存储的功能,可以实现存储和记忆功能。

3.2. 触发器和时序逻辑电路的设计方法触发器是时序逻辑电路的基本组件,常见的触发器包括SR 触发器、D触发器和JK触发器等。

时序逻辑电路的设计方法主要是通过状态转换图、状态转移表和重建方程等方法进行设计。

微机原理第三章作业答案

微机原理第三章作业答案

3.1 简要分析8086的指令格式由哪些部分组成,什么是操作码?什么是操作数?寻址和寻址方式的含义是什么?8086指令系统有哪些寻址方式?【解答】8086的指令格式由操作码和操作数字段组成。

操作码:要完成的操作。

操作数:参与操作的对象。

寻址:寻找操作数或操作数地址的过程。

寻址方式:指令中给出的找到操作数或操作数地址采用的方式。

8086指令系统的寻址方式主要有立即数寻址、寄存器寻址、存储器寻址和I/O端口寻址。

其中,存储器寻址可进一步分为直接寻址、寄存器间接寻址、寄存器相对寻址、基址变址寻址、相对基址变址寻址;I/O端口指令IN和OUT使用的端口寻址方式有直接寻址和间接寻址。

3.2 设(DS)=2000H,(ES)= 2100H,(SS)= 1500H,(SI)= 00A0H,(BX)= 0100H,(BP)= 0010H,数据变量VAL的偏移地址为0050H,请指出下列指令的源操作数字段是什么寻址方式?它的物理地址是多少?(1) MOV AX,21H (2) MOV AX,BX (3) MOV AX,[1000H](4) MOV AX,VAL (5) MOV AX,[BX] (6) MOV AX,ES:[BX](7) MOV AX,[BP] (8) MOV AX,[SI] (9) MOV AX,[BX+10](10) MOV AX,VAL[BX] (11) MOV AX,[BX][SI] (12) MOV AX,VAL[BX][SI]【解答】(1)MOV AX,21H立即寻址,源操作数直接放在指令中(2)MOV AX,BX寄存器寻址,源操作数放在寄存器BX中(3)MOV AX,[1000H]直接寻址,EA = 1000H,PA =(DS)×10H+EA = 2000H×10H+1000H = 21000H(4)MOV AX,VAL直接寻址,EA = [V AL] = 0050H,PA =(DS)×10H+EA = 2000H×10H+0050H = 20050H(5)MOV AX,[BX]寄存器间接寻址,EA =(BX)= 0100H,PA =(DS)×10H+EA = 2000H×10H+0100H = 20100H(6)MOV AX,ES:[BX]寄存器间接寻址,EA =(BX)= 0100H,PA =(ES)×10H+EA = 2100H×10H+0100H = 21100H(7)MOV AX,[BP]寄存器间接寻址,EA =(BP)= 0010H,PA =(SS)×10H+EA = 1500H×10H+0010H = 15010H(8)MOV AX,[SI]寄存器间接寻址,EA =(SI)= 00A0H,PA =(DS)×10H+EA = 2000H×10H+00A0H = 200A0H(9)MOV AX,[BX+10]相对寄存器寻址,EA =(BX)+10D = 0100H+000AH= 010AH,PA =(DS)×10H+EA = 2000H×10H+010AH = 2010AH(10)MOV AX,VAL[BX]相对寄存器寻址,EA =(BX)+[V AL]= 0100H+0050H= 0150H,PA =(DS)×10H+EA = 2000H×10H+0150H = 20150H(11)MOV AX,[BX][SI]基址变址寻址,EA = (BX)+(SI)= 0100H+00A0H = 01A0H,PA = (DS)×10H +EA = 2000H×10H+01A0H = 201A0H(12)MOV AX,VAL[BX][SI]相对基址变址寻址,EA = (BX)+(SI)+[V AL]= 0100H+00A0H+0050H = 01F0H,PA =(DS)×10H+EA = 2000H×10H+01F0H = 201F0H3.3 给定寄存器及存储单元的内容为:(DS) = 2000H,(BX) = 0100H,(SI) = 0002H,(20100) = 32H,(20101) = 51H,(20102) = 26H,(20103) = 83H,(21200) = 1AH,(21201) = B6H,(21202) = D1H,(21203) = 29H。

微机原理吴宁每四章参考答案

微机原理吴宁每四章参考答案
Db 128 dup(?)
Stk ends
Code segment
Assume cs:code,ds:data,ss:stk
Start proc far
Mov ax,data
Mov ds,ax
Leabx,block
mov ah,0
mov cx,count
again: mov al,[bx]
test al,80h;
jz plus
neg al
plus: cmp al,ah
jbe next
mov ah,al
next: inc bx
loop again
mov max,ah
mov ah,4ch
int 21h
start endp
code ends
end
4-20
Data segment
Abc dw ?
Result db 3 dup(0)
Jns plus
Inc count2
Jmp next
Zero: inc count3
Jmp next
Plus: inc count1
Next: add bx,2
loop again
mov ah,4ch
int 21h
start endp
code ends
end start
4-18
Data segment
4.1 (1) BLOCK DB 20H,30H,40H,50H,60H,70H,80H,90H
(2) BLOCK DW 3020H,5040H,7060H,9080H
(3) BLOCK DD 50403020H, 90807060H
4.2从偏移VAR1开始,的单元依次存放.

微计算机原理(第2版)第三章课后习题答案解析讲课讲稿

微计算机原理(第2版)第三章课后习题答案解析讲课讲稿

微计算机原理(第2版)第三章课后习题答案解析讲课讲稿微计算机原理(第2版)第三章课后习题答案解析第三章 80x86 指令系统3-1 指令由操作码字段和操作数字段组成。

8086的指令长度在1~6字节范围。

3-2 分别指出下列指令中源操作数和目的操作数的寻址方式。

若是存储器寻址,使用表达式表示出EA=? PA=?(1) MOV SI, 2100H (2) MOV CX, DISP[BX] (3) MOV [SI], AX (4) ADC ZX, [BX][SI] (5) AND AX, DX (6) MOV AX,[BX+10H](7) MOV AX, ES:[BX] (8)MOV AX, [BX+SI+20H] (9) MOV [BP], CX (10) PUSH DS解:3-3 已知8086中一些寄存器的内容和一些存储器单元的内容如图3-1所示,试指出下列各条指令执行后,AX中的内容。

(1)MOV AX, 2010H (2) MOV AX, BX (3) MOV AX, [1200H](4)MOV AX, [BX] (5) MOV AX, 1100H[BX] (6) MOV AX, [BX][SI](7)MOV AX, 1100H[BX+SI] (8) MOVLEA AX, [SI]解:(1)(AX)=2010H (2)(AX)=0100H (3)(AX)=4C2AH (4)(AX)=3412H(5)(AX)=4C2AH (6)(AX)=7856H (7)(AX)=65B7H (8)(AX)=0002H图3-1 3-4 已知(AX)=2040H,(DX)=380H,端口(PORT)=(80H)=1FH,(PORT+1)=45H,执行下列指令后,指出结果等于多少?解:(1)OUT DX, AL (0380H)=40H(2)OUT DX, AX (380H)=40H (381h)=20H(3)IN AL, PORT (AL)=1FH(4)IN AX, 80H (AX)=451FH(5)OUT PORT1, AL (PORT1)=40H(6)OUT PORT1, AX (PORT1)=2040H3-5 已知:(SS)=0A2F0H,(SP)=00C0H,(AX)=8B31H,(CX)=0F213,试画出下列指令执行到位置1和位置2时堆栈区和SP指针内容的变化示意图。

微型计算机原理答案 第三章

微型计算机原理答案 第三章

第三章课后题答案注:存储单元或寄存器名用“()”,表示存储单元或寄存器的内容寄存器名用“[]”,表示寄存器内容为一个内存单元的地址习题答案:1、指出指令中源操作数的寻址方式1)立即数寻址2)直接寻址3)寄存器间接寻址4)寄存器相对寻址5)寄存器寻址6)基址变址相对寻址7)寄存器寻址8)段内间接寻址9)端口间接寻址10)寄存器相对寻址11)立即数寻址12)立即数寻址2、指令是否正确,若不正确说明原因1)错误,立即数不能直接传送到段寄存器,可以用MOV AX,0100H MOVDS,AX两条指令实现2)错误,数据类型不匹配源操作数字节操作,目的操作数字操作数3)正确4)错误,端口地址>0FFH时,必须使用端口间接寻址方式。

可以用下两条指令实现:MOV DX,310H OUT DX,AL5)正确6)正确7)错误,没有同时用两个变址寄存器寻址内存单元的指令。

8)正确允许段超越9)错误,数据类型不匹配10)错误,BP不能作为间址寄存器11)正确12)错误,立即数不能作为目的操作数13)错误,堆栈指令不能用立即数14)错误,不能在两个内存单元之间直接用MOV指令传送数据。

15)错误,数据类型不匹配16)正确17)错误,CS段寄存器不能做目的操作数18)错误,没有指明操作数类型是字还是字节19)错误,端口间接寻址时,间址寄存器只能是DX不能是其它寄存器20)错误,移位指令和循环指令当操作次数大于1时,只能用CL存储操作次数。

21)错误,交换指令中不能用段寄存器22)错误,堆栈操作只能是字类型3、写出物理地址的计算表达式1)PA= (DS) * 10H + (DI)2)PA= (DS) * 10H + (BX) + (SI)3)PA= (DS) * 10H + (BX) + (DI) +54)PA= (ES) * 10H + (BX)5)PA= (DS) * 10H + 1000H6)PA= (DS) * 10H + (BX)+(DI)+2000H7)PA= (SS) * 10H + (BP)+(SI)8)PA= (DS) * 10H + (DI)4、计算物理地址1)PA= (DS) * 10H + (BX)=30000H+2000H=32000H2)PA= (DS) * 10H + (BX)+(SI)+1000H=30000H+2000H+0100H+1000H=33100H3)PA= (DS) * 10H + (BX)+(SI)=32100H4)PA= (ES) * 10H + (BX)=40000H+2000H=42000H5、代码段可寻址的空间范围:0E0000H~0EFFFFH6、(SP)=1FFEH,(AX)=5000H, (BX)=5000H7、两条指令的相同点:同为减法指令,均执行(AX)-09H操作;不同点:SUB指令有返回结果,而CMP指令没有返回结果。

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

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

第3章8086CPU指令系统1.写出完成下列要求的变量定义语句:(1)在变量var1中保存6个字变量:4512H,4512,-1,100/3,10H,65530;(2)在变量var2中保存字符串:’BYTE’,’word’,’WOR’D;(3)在缓冲区buf1中留出100个字节的存储空间;(4)在缓冲区buf2中,保存5个字节的55H,再保存10个字节的240,并将这一过程重复7次;(5)在变量var3中保存缓冲区buf1的长度;(6)在变量pointer中保存变量var1和缓冲区buf1的偏移地址。

解:var1DW4512H,4512,-1,100/3,10H,65530var2DB’BYTE’,’word’,’WORD’buf1DB100DUP(?)buf2DB7DUP(5DUP(55H),10DUP(240))var3DBLENGTHbuf1pointerDWvar1,buf1(或者pointerDWOFFSETvar1,OFFSETbuf1)2.设变量var1的逻辑地址为0100:0000,画出下列语句定义的变量的存储分配图:var1DB12,-12,20/6,4DUP(0,55H)var2DB‘Assemble’var3DW‘AB’,‘cd’,‘E’var4DWvar2var5DDvar2解:3.指令正误判断,对正确指令写出源和目的操作数的寻址方式,对错误指令指出原因(设VAR1,VAR2为字变量,L1为标号):(1)MOVSI,100(2)MOVBX,VAR1[SI](3)MOVAX,[BX](4)MOVAL,[DX](5)MOVBP,AL(6)MOVVAR1,VAR2(7)MOVCS,AX(8)MOVDS,0100H(9)MOV[BX][SI],1(10)MOVAX,VAR1+VAR2(11)ADDAX,LENGTHVAR1(12)ORBL,TYPEVAR2(13)SUB[DI],78H(14)MOVSVAR1,VAR2(15)PUSH100H(16)POPCS(17)XCHGAX,ES(18)MOVDS,CS(19)JMPL1+5(20)DIVAX,10(21)SHLBL,2(22)MOVAL,15+23(23)MULCX(24)XCHGCL,[SI](25)ADCCS:[0100],AH(26)SBBVAR1-5,154解:(1)MOVSI,100正确。

第三章微机原理习题答案

第三章微机原理习题答案

第三章习题答案一、单选题1.8086是高性能的第三代微处理器,是Intel系列的 B 位微处理器。

A.8 B.16 C.32 D.642.8086有20根地址线,可以寻址到的内存空间能达到 B 字节。

A.1K B.1M C.1G D.1T3.80486的内部所有部件都连接在 A 上,并通过 B 交换数据A.内部总线B.数据总线C.地址总线D.外部总线4. C 的任务就是在内部控制总线信号的控制下,把内部数据总线上的数据送上外部地址总线,或与外部数据总线的某些位交换数据,并产生相应的外部控制信号。

A.高速缓存部件B.代码预取部件C.总线接口部件D.指令译码部件5.在指令流水线技术中,预取指令部件一次可以从内部Cache取 C 字节的指令代码,送预取指令队列等候执行。

A.4 B.8 C.16 D.326.当存储器的读出时间大于CPU要求的时间时,为了保证CPU与存储器的周期配合,就要利用一个READY信号,使CPU插入一个 D 状态。

A.T1B.T2C.T3D.Tw7.指令队列的作用是 D 。

A.暂存操作数地址B.暂存操作数C.暂存指令地址D.暂存预取指令8.在80486微处理器中设置有4个系统地址寄存器,用来在保护方式下管理4个系统表。

其中用来存放全局描述符表的是 A 。

A.全局描述符表寄存器B.中断描述符表寄存器C.局部描述符表寄存器D.任务状态寄存器9.段寄存器和 D 一起为操作系统完成内存管理、多任务环境、任务保护提供硬件支持。

A.调试寄存器B.系统地址寄存器C.标志寄存器D.指令指针寄存器10. B 为中断允许标志。

该位置为1时,允许响应外部可屏蔽中断(INTR);该位置为0时,禁止响应外部可屏蔽中断。

A.OF B.IF C.DF D.ZF二、判断题1.8086的内部结构由总线接口部件BIU和执行部件EU两部分组成。

(T )2.总线实际上是一组导线,是各种公共信号线的集合,用于作为微型计算机中所有各组成部分传输信息共同使用的“公路”。

(完整版)微型计算机原理(第三章课后答案)

(完整版)微型计算机原理(第三章课后答案)

微型计算机原理第三章80X86微处理器1.简述8086/8088CPU中BIU和EU的作用,并说明其并行工作过程。

答:(1)BIU的作用:计算20位的物理地址,并负责完成CPU与存储器或I/O端口之间的数据传送。

(2)EU的作用:执行指令,并为BIU提供所需的有效地址。

(3)并行工作过程:当EU从指令队列中取出指令执行时,BIU将从内存中取出指令补充到指令队列中。

这样就实现了取指和执行指令的并行工作。

2.8086/8088CPU内部有哪些寄存器?其主要作用是什么?答:8086/8088CPU内部共有14个寄存器,可分为4类:数据寄存器4个,地址寄存器4个,段寄存器4个和控制寄存器2个。

其主要作用是:(1)数据寄存器:一般用来存放数据,但它们各自都有自己的特定用途。

AX(Accumulator)称为累加器。

用该寄存器存放运算结果可使指令简化,提高指令的执行速度。

此外,所有的I/O指令都使用该寄存器与外设端口交换信息。

BX(Base)称为基址寄存器。

用来存放操作数在内存中数据段内的偏移地址,CX(Counter)称为计数器。

在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化,有利于提高程序的运行速度。

DX(Data)称为数据寄存器。

在寄存器间接寻址的I/O指令中存放I/O端口地址;在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数。

(2)地址寄存器:一般用来存放段内的偏移地址。

SP(Stack Pointer)称为堆栈指针寄存器。

在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时,每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。

BP(Base Pointer)称为基址寄存器。

作为通用寄存器,它可以用来存放数据,但更经常更重要的用途是存放操作数在堆栈段内的偏移地址。

SI(Source Index)称为源变址寄存器。

SI存放源串在数据段内的偏移地址。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8086微型计算机原理与应用(吴宁)习题答案(第二章)第三章
3-3
(1) 源操作数为立即寻址方式;目的操作数为寄存器寻址方式
(2) 源操作数为基址寻址方式;目的操作数为寄存器寻址方式
EA=BX+DISP , PA= DS*16+EA
(3) 源操作数为寄存器寻址方式;目的操作数为寄存器间接寻址方式
EA=SI , PA= DS*16+EA
(4) 源操作数为基址加变址寻址方式;目的操作数为寄存器寻址方式
EA=BX+SI , PA= DS*16+EA
(5) 源操作数为寄存器寻址方式;目的操作数为寄存器寻址方式
(6) 源操作数为基址寻址方式;目的操作数为寄存器寻址方式
EA=BX+10H , PA= DS*16+EA
(7) 源操作数为寄存器间接寻址方式;目的操作数为寄存器寻址方式
EA=SI , PA= ES*16+EA
(8) 源操作数为带位移量的基址加变址寻址方式;目的操作数为寄存器寻址方式
EA=BX+SI+20H , PA= DS*16+EA
3-7
(1)AX=3355H , SP=1FFEH
(2) AX= 3355H , DX= 4466H , SP =1FFEH
3-8 BX= 4154H , [2F246H]= 6F30H
3-9 SI=0180H , DS = 2000H
3-10 求执行指令后的结果
(1) CL=F6H
(2) [1E4F6H]=5678H
(3) BX=0056H AX=1E40H
(4) SI=00F6H , [SI]= [1E4F6H]= 0024H
(5) AX=5678H [09226H]=1234H
3-12
(1) 端口580H 的内容为60H
(2) 端口580H 的内容为60H, 端口581H 的内容为80H
(3) 端口40H 的内容4FH 送至AL中
(4) 端口40H 的内容4FH 送至AL中, 端口41H 的内容送至AH中
(5) 端口45H 的内容为60H
(6) 端口45H 的内容为60H, 端口46H 的内容为80H
3-13
(1) 寄存器间址 LEA SI, BLOCK
ADD SI, 0AH
MOV AX , [SI]
(2) 基址寻址 LEA BX, BLOCK
MOV AX, [BX+0AH]
(3) 相对基址变址寻址 LEA BX, BLOCK
MOV SI , 0AH
MOV AX , [BX+SI]
(4) 直接寻址 MOV AX , [ BLOCK+0AH ]
3-15
(1)MOV AX 1000H 立即数寻址,表示把1000H赋给AX
MOV AX DS:[1000H] 直接寻址,表示把DS段中地址为1000H中内容赋给AX
(2)MOV AX N N为常量,立即数寻址,把N赋给AX
MOV AX M M为数据段中字变量,直接寻址,把M中内容赋给AX
(3)MOV AX [BX+N] 基址寻址
MOV AX [AX+M] 基址加变址寻址
(4)MOV [SP][SI] CL 以SS为段寄存器
MOV DS:[BP]PSI] CL 以DS为段寄存器
(5)MOV AL,5 将5赋给AL
IN AL 5 将端口5中数据输入AL
(6)MOV AX,W 将W中数据传给AX
LEA AX,W 将W的偏移地址传给AX
(7)AND AX,BX AX与BX相与,保存到AX中
TEST AX,BX 结果不送回AX
(8)SUB AX,BX 将AX与BX的差送入AX
CMP AX,BX 比较AX,BX,AX-BX不返回AX
(9)INC SI 不影响CF标志位
ADD SI,1 影响全部标志位
(10)NEG AX 影响所有标志位
NOT AX 不影响标志位
3-25
(1) 将数据段中以FIRST为首址的10个字节单元的内容送至附加段中以SECOND为首
址的10个单元内.
(2) 将附加段中从地址0404H开始至0503H共256个存储单元清零。

相关文档
最新文档