3.1 8086CPU与8088CPU有哪些相同之处:又有哪些区别?3.2 8086系统的物理地址是如何得到的?假如CS=2000H,IP=2100H其物理地址应是多少?3.3 什么是总线周期?8086CPU的一个总线周期包括多少时钟周期,什么情况下插入Tw等待周期:插入多少个Tw取决于什么因素?第四章习题4.1 需要定时刷新的存储器是(B ).A.SARMB.DRAMC.EPROMD.EEPROM4.2利用容量为4K×2b的SRAM芯片构成从A4000H到B7FFFH的内存,用这样的芯片需要( C ).A.40片B.60片C.80片D.100片4.3 突然断电后,计算机__C___中的数据将全部丢失.A.硬盘B.ROM和RAMC.RAMD.ROM4.4 下面的说法中,正确的是___D___.A.EPROM是不能改写的.B.EPROM是可以改写的,所以也是一种读写存储器.C.EPROM只能改写一次.D.EPROM是可以改写的,但他不能作为读写存储器.4.5 可直接存取16M字节内存的微处理器,其地址总线需_A___条.A.24B.16C.204.6某微机系统的存储器地址空间为A8000H~CFFFFH,若采用单片容量为16K×1位的SRAM芯片构成,回答以下问题:(1)系统存储容量为多少?(2)组成该存储系统共需该类芯片多少个?(3)整个系统应分为多少个芯片组:解4.6:(1)系统存储容量=CFFFFH-A80000H+1=28000H(B)=160(KB).(2)所需芯片=160K×8位/16K×1位=80(个).(3)该芯片字长不足8位,应以8位为一组构成字节单元.所以80个芯片应分成80/8=10个芯片组.4.7下列RAM各需要多少条地址线进行寻址,多少条数据I/O线?(1)64K×1 (2)256K×4解4.7: (1)16条地址线,一条数据I/O线.(2)需要18条地址线,4条数据I/O线.5.1、设DS=6000H,ES=2000H,SS=1500H,SI=00A0H,BX=0800H,BP=1200H,数据变量V AR为0050H。
请分别指出下列各条指令源操作数的寻址方式:它的物理地址是多少:(1)MOV AX,BX(2)MOV DL,80H(3)MOV AX,V AR(4)MOV AX,V AR[BX][SI](5)MOV AL,’B’(6)MOV DI,ES:[BX](7)MOV DX,[BP](8)MOV BX , 20H[BX]解5.1. (1) 寄存器寻址。
BX为地址(2)立即寻址。
操作数80存放在指令段中指令代码MOV之后。
(3)立即寻址(4)基址变址相对寻址,PA=608F0H(5)立即寻址(6)寄存器间接寻址。
PA=20800H(7)寄存器间接寻址。
PA=16200H(8)寄存器相对寻址。
PA=60820H5.2假设DC=212AH,CS=0200H,IP=1200H,BX=0500H,位移量DATA=40H,(217A0)=2300H,(217E0H)=0400H,(217E2H)=9000H试确定下列转移指令的转移地址。
(1)JMP 2300H(2)JMP WORD PTR[BX](3)JMP DWORD PTR[BX+DA TA]解5.2(1)段内直接转移:PA=05500H(2)段内间接转移:PA=04300H(3)段间间接转移:PA=90400H5.3、试说明MOVBX,5[BX]与指令LEA BX,5[BX]区别。
解5.3.前者是数据传送类指令,表示将数据段中以BX+5为偏移地址的16位数据送寄存器BX。
后者是取偏移地址指令,实行结果是BX=BX+5,即操作数的偏移地址为BX+5.5.4指出下列指令的错误:(1)MOV AH, CX(2)MOV 33H,AL(3)MOV AX,[SI][DI](4)MOV [BX],[SI](5)ADD BYTE PTR[BP],256(6)MOV DA TA[SI],ES:AX(7)JMP BYTE PTR[BX](8)OUT 230H, AX(9)MOV DS,BP(10)MUL 39H答5.4(1)错。
两操作数字长不相等。
(2)错。
MOV指令不允许目的操作数为立即数。
(3)错。
在间接寻址中部允许两个间址寄存器不能从事为存储器操作数。
(4)错。
MOV指令不允许两操作数同事为存储器操作数。
(5)错。
ADD指令要求量操作数等字长。
(6)错。
源操作数形式错,寄存器操作数不加断超越前缀(段重设符)。
(7)错。
转移地址的字长至少应是16位的。
(8)错。
对输入输出指令,当端口地址超出8位二进制数表示范围时,必须采用间接寻址。
(9)正确。
(10)错。
MUL指令不允许操作数为立即数。
5.5已知AL=7BH,BL=.38H,试问之行指令ADD AL,BL后,AF,CF,OF,PF,SF和ZF的值各为多少:答5.5AF=1,CF=0,OF=1,PF=0,SF=1,ZF=05.6 试判断下列程序执行后,BX中的内容。
MOV CL, 3MOV BX, 0B7HROL BX,1ROR BX,CL解5.6该程序段是首先将BX内容不带近位循环左移1位,再循环右移3位。
即相当于将原BX内容不带进位循环右移2位,故结果为BX=0C02DH。
5.7 按下列要求写出相应的指令或程序段。
(1)写出两条使AX内容为0的指令。
(2)使BL寄存器中高4位和低四位互换。
(3)测试DX中第0和8位是否为1。
答5.7(1)MOV AX, 0XOR AX,AX(2)MOV CL, 4ROL BL,CL(3)AND DX,0101HCOMP DX, 0101hJZ ONE…5.8试编写程序,统计BUFFER起始地址的连续200个单元中的0的个数。
解5.8:将BUFFER为首地址的200个单元的数依次与0进行比较,若相等则表示该单元数为0,统计数加1;否则再取下一个数比较,直到200个单元数全部比较完毕为止.程序如下: LEA SI,BUFFERMOV CX,200XOR BX,BXAGAIN: MOV AL,[SI]CMP AL,0JNE GOONINC BXGOON: IN SILOOP AGAINHLT5.9 8086执行指令MOV AX,[BX],其中BX=3240H。
则BHE(低电平有效)和A0的输出为 D 。
A.1,1 B、0,1 C、1,0 D、0,0第六章作业6.1 请分别用DB、DW、DD伪指令写出在DATA开始的连续8个单元中依次存放数据11H、22H、33H、44H、55H、66H、77H、88H的数据定义语句。
解6.1 :DB,DW,DD伪指令分别表示定义的数据为字节类型、字类型及双字型。
其定义形式分别为:DA TA DB 11H,22H,33H,44H,55H,66H,77H,88HDA TA DW 2211H,4433H,6655H,8877HDA TA DD 44332211H,88776655H6.2 若程序的数据段定义如下,写出各指令语句独立执行后的结果:DSEG SEGMENTDA TA1 DB 10H,20H,30HDA TA2 DW 10 DUP(?)STRING DB ‘123’DSEG ENDS(1) MOV AL,DA TA1(2) MOV BX,OFFSET DATA2(3) LEA SI,STRINGADD DI, SI解6.2 :(1)取变量DATA1的值。
指令执行后,AL=10H(2)变量DATA2的偏移地址。
指令执行后,BX=0003H。
(3)先取变量STRING的偏移地址送寄存器SI,之后将SI的内容与DI的内容相加并将结果送DI。
指令执行后,SI=0017H,DI=DI+0017H。
6.3执行下列指令后,AX寄存器中的内容是多少?TABLE DW 10,20,30,40,50ENTRY DW 3….MOV BX, OFFSET TABLEADD BX,ENTRYMOV AX,[BX]解6.3 :AX=1E00H第八章 输入输出接口8.1、I/O 接口的主要功能有哪些?有哪两种编址方式,各自的特点是什么?在8086/8088系统中采用哪一种编址方式?解8.1:I/O 接口主要需具有以下几种功能:(1) 作为微机与外设间传递数据的中间缓冲站(2) 正确寻址与微机交换数据的外设(3) 提供微型计算机与外设间交换数据所需的控制逻辑与状态信号。
采用I/O 端口独立编址方式8.2 试比较4种基本输入输出的方法的特点。
第九章 中断技术9.1 INTR 中断和NMI 中断有什么区别?9.2 某中断源的类型码为70H ,其中断服务程序的入口地址为CS=1000H ,IP=2000H 。
画出对应的中断向量表。
答:9.2 中断向量表如图9.3 非屏蔽中断处理程序的入口地址怎样寻找?答:9.3非屏蔽中断类型号为2,因此在中断向量表地址00008H~0000BH 单元中存放非屏蔽中断服务程序的入口地址.9.4 INTR 中断和NMI 中断有什么区别?答: 9.4 INTR 中断为可屏蔽中断,中断请求信号高电平有效。
CPU 能否响应该请求需要看中断允许标志IF 的状态,只有当IF=1时,CPU 才可能响应中断。
0000:01C0HNMI中断为非屏蔽中断,请求信号为上升沿有效,对它的响应不受IF表示为的约束,CPU 只要当前指令执行结束就可以响应NMI请求。
9.5单片8259芯片能够管理多少级可屏蔽中断?若用3片级联能管理多少级可屏蔽中断?答:9.5 因8259芯片有8位可屏蔽中断请求输入段,故单片能过管理8级可屏蔽中断。
若用3片级联,即一片用作主控芯片,两片作为从属芯片,每一片从属芯片可管理8级,则3片级联共可管理22级可控制屏蔽中断。