微机原理及应用 第2章 习题及答案
微机原理第2章作业及答案
第2章8086微处理器及其系统习题解答1. 8086 CPU 由哪两部分构成,它们的主要功能是什么在执行指令期间,EU 能直接访问存储器吗,为什么【解】8086CPU由执行部件(EU)和总线接口部件(BIU)两部分组成。
执行部件由内部寄存器组、算术逻辑运算单元(ALU)与标志寄存器(FR)及内部控制逻辑等三部分组成。
寄存器用于存储操作数和中间结果;算术逻辑单元完成16位或8位算术逻辑运算,运算结果送上ALU内部数据总线,同时在标志寄存器中建立相应的标志;内部控制逻辑电路的主要功能是从指令队列缓冲器中取出指令,对指令进行译码,并产生各种控制信号,控制各部件的协同工作以完成指令的执行过程。
总线接口部件(BIU)负责CPU与存储器、I/O设备之间传送数据、地址、状态及控制信息。
每当EU部件要执行一条指令时,它就从指令队列头部取出指令,后续指令自动向前推进。
EU要花几个时钟周期执行指令,指令执行中若需要访问内存或I/O设备,EU就向BIU 申请总线周期,若BIU总线空闲,则立即响应,若BIU正在取一条指令,则待取指令操作完成后再响应EU的总线请求。
2. 8086CPU与传统的计算机相比在执行指令方面有什么不同这样的设计思想有什么优点【解】8086 CPU与传统的计算机相比增加了指令队列缓冲器,从而实现了执行部件(EU)与总线接口(BIU)部件的并行工作,因而提高了8086系统的效率。
3. 8086 CPU 中有哪些寄存器,各有什么用途【解】8086共有8个16位的内部寄存器,分为两组:①通用数据寄存器。
四个通用数据寄存器AX、BX、CX、DX均可用作16位寄存器也可用作8位寄存器。
用作8位寄存器时分别记为AH、AL、BH、BL、CH、CL、DH、DL。
AX(AH、AL)累加器。
有些指令约定以AX(或AL)为源或目的寄存器。
实际上大多数情况下,8086的所有通用寄存器均可充当累加器。
BX(BH、BL)基址寄存器。
微机原理第二章习题参考答案
微机原理第二章习题参考答案微机原理第二章作业参考答案:1.(2字节)a.指由8个二进制位组成的通用基本单元(6时钟周期)b.是cpu指令执行时间的刻度(10软件配置管理空间)c.cpu所要出访的存储单元数,与cpu地址总线条数有关(11实际地址)d.唯一能代表存储空间每个字节单元的地址,用5位16进制数表示(7总线周期)e.cpu执行访问存储器或i/o操作所花时间(12逻辑地址)f.由段基址和段偏转地址共同组成,均用4十一位16十进制则表示(4基本指令继续执行时间)g.指寄存器乘法指令继续执行所花掉时间(3指令)h.顺利完成操作方式的命令(1字长)i.指cpu在交换、加工、存放信息时信息位的基本长度(5指令执行时间)j.各条指令执行所花时间,不同指令值不一(8cache)k.为减轻cpu与主存储器间互换数据的速度瓶颈而建立的高速缓冲存储器(9虚拟存储器)l.cpu执行程序时看见的一个速度吻合内存却具有外存容量的假想存储器2.(1)mhz频率单位,可以用来表示cpu的主频1mhz=1000000hz(2)ghz频率单位,可以用来表示cpu的主频1ghz=1000000000hz(3)μs时间单位,可以用来表示基本指令执行时间1μs=10s(4)mips每秒百万条指令,用来表示基本指令执行速度(5)kb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1kb=2bytes(6)mb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1mb=2bytes(7)gb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1gb=2bytes(8)tb用以则表示存储器容量、软件配置管理空间或者存储空间的一种单位1tb=2bytes3.eu的共同组成部件:(3)alu(7)状态标志寄存器(9)掌控单元(12)通用寄存器组与biu的共同组成部件:(1)地址部件au(2)段界检查器(4)20十一位地址产生器(5)20十一位物理地址加法器(6)指令队列(8)总线掌控逻辑(10)段寄存器组(11)指令指针4.标志sf(b符号标志)cf(d位次标志)af(h辅助位次标志)df(i方向标志)tf(a陷阱标志)of(c外溢标志)pf(f奇偶标志)if(g中断容许标志)zf(e零标志)类型sssccsscs为0时则表示的状态两个带符号数运算结果就是正数两个并无符号数经alu运算后并无位次或者借位产生两个数运算时,两个高4十一位运算并无位次或者借位产生数据串成操作方式的增量地址为自动递减正常调试两个带符号数运算后没产生外溢运算结果数据高8位中二进制存有奇数个1中断屏蔽数据运算时结果不为零403020?6107.首地址pa=62d87h末地址pa=62d87h+28h(则表示40字节)-1h=62daeh8.实际地址:99a40h9.实际地址:3ba00h10填写下列个状态下的有效信号状态总线操作类型t1t2t3t4最小模式下总线存储器读操作最小模式下总线存储器写操作11.特点方式最小模式最大模式12.00130h:00131h:00135h:00136h:13.0dah31h7fh5ehmn/mx引脚高电平低电平处理器个数12个以上总线控制信号的产生8086828834h00230h:2dh00231h:0abh00232h:00233h:67h14.55h00330h:20h00331h:00332h:45h00333h:20h00334h:53h00335h:20h00336h:54h00337h:20h00338h:43h15.(1)ds:11a7es:11a7ss:21becs:31b8ds,es段顶:11a70hss段顶上:21be0hss段底:22ca8hcs段顶上:31b80hds,es段底:21a6fhcs段底:41b7fh(2)of=0df=0if=1sf=0zf=0zf=0pf=0cf=016.5ch20a28h:00h20a29h:7ah20a2ah:20a2bh:20a2ch:20a2dh:20a2eh:20a2fh:20a30h:20a31h:53h42h0ffh12h00h5bh0ah入栈完毕时,(ss)=20a0h(ip)=0028h17.8086系统中:(1)8284a时钟产生器的作用是:为8086cpu提供时钟,产生cpu所需的系统时钟信号(2)8282/8283地址锁存器的作用是:锁存8086地址总线中的信息(3)8286/8287总线收发器的作用是:传送8086数据总线中的信息(4)8288总线控制器的促进作用就是:在最小工作模式下产生8086系统所需的掌控信号18.8086寻址i/o端口时,使用16条地址线,可寻址32k个字端口,或64k个字节端口。
微机原理及应用习题答案
《微机原理及应用》习题答案教材:《80X86/Pentium 微型计算机原理及应用》答案第一章计算机基础1-3(1)01101110 真值=110(2)10001101 真值=-131-4(1)+010111[+010111]原=[+010111]反=[+010111]补=00010111 (2) +101011[+101011]原=[+101011]反=[+101011]补=00101011 (3) - 101000[-101000]原=10101000 [-101000]反= 11010111[-101000]补=11011000(4) -111111[-111111]原=10111111 [-111111]反= 11000000[-111111]补=110000011- 6(1) [x1+y1] 补=[x1]补+ [y1]补=00010100+00100001=00110101(2) [x2-y2]补=[x2]补+ [-y2]补=11101100+00100001=000011011- 7(1) 85+60解:[-85] 补=10101011 [60] 补=00111100[-85] 补+[60] 补=10101011+00111100=11100111 (11100111)补=10011001 真值=—25CS= 0, CP=0, CS® CP= 0 无溢出(4)-85-60[-85] 补=10101011 [-60] 补=11000100 [-85] 补+[-60] 补=10101011+11000100=101101111 CS=1, CP=0 CS® CP=1 有溢出1- 8(1) [x] 补+ [y] 补=01001010+01100001=10101011 CS=0, CP=1 CS® CP=1 有溢出⑵[X] 补-[y]补=[x]补+ [-y]补=01001010- 01100001=01001010+10101010=100010110CS=1, CP=1 CS® CP=0 无溢出1- 9(1) (127)10=(000100100111)BCD(2) (74)H=(116)10=(000100010110)BCD(1) 41H 代表 A(2) 72H 代表r (3) 65H 代表e(4) 20H 代表SP1-14(1) 69.57(69.57)10=(1000101.100)B=0.1000101100 X 27=0.1000101100 X 2+111浮点规格数为011101000101(2) -38.405(-38.405)10=(-100110.011)B-100110.011= -0.100110011 x 26 = - 0.100110011 x 2110浮点规格数为011011001100(3) - 0.3125(-0.3125)10=(-0.0101)2=(-0.101)2 x 2-001浮点规格数为1111110100001. +0.008342. (+0.00834)10=(0.000000100010001)2=(0.100010001)2 x 2-1103. 浮点规格数为1010010001004. 1-155. (1) (69.57)10=(1000101.10010001111010111)26. =(1.00010110010001111010111)2 x 21107. p=6+127=133=(10000101)28. 单精度浮点数为010000101000101100100011110101119. ( 2)(-38.405)10=(-100110.011001111010111000)210. = - (1.00110011001111010111000)2 x 210111. p=5+127=132=(10000100)212. 单精度浮点数为1100001000011001100111101011100013. (3) (-0.3125)10=(-0.0101)2=(-1.01)2 x 2-1014. p=-2+127=125=(1111101)215. 单精度浮点数为10111110101000000000000000000000第二章80X86/Pentium 微处理器2- 3IO/M DT/R DEN RD WR 读存储器0 0 0 0 1 写存储器0 1 0 1 0 2- 17PA=CS x 16+IP IP 的范围为OOOOH〜FFFFH而CS 为A000H因此PA的范围即现行代码段可寻址的存储空间范围为1-10AOOOOH〜AFFFFH2- 2O1234ABCDH=OOO1OO1OOO11O1OO1O1O1O1111OO11O1 BPA=SS x 16+SP=AOOOOH+O1OOH=AO1OOH栈顶SP= 0100H-4=00FCH11OO11O1 AOOFCH101010110011010000010010 A0100F2- 21(1) 1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001SF=0 ZF=0 AF=1 PF=1 CF=0 OF=0(2) 54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000=1 0010 1101 0100 0011SF=0 ZF=0 AF=1 PF=0 CF=0 OF=0当进行16 位或8 位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。
微机原理第二章练习题及解
微机原理第二章练习题及解一:单项选择题●8086CPU复位后, 下列寄存器的值为( C )。
A:CS = 0000H、IP = 0000H B:CS = 0000H、IP = FFFFHC:CS = FFFFH、IP = 0000H D:CS = FFFFH、IP = FFFFH●8086CPU复位后, 下列寄存器的值为( C )。
A:CS:IP = 0000H:0000H B:CS:IP = 0000H:FFFFHC:CS:IP = FFFFH:0000H D:CS:IP = FFFFH:FFFFH●当RESET信号为高电平时,寄存器初值为FFFFH的是( A )。
A:CS B:ES C:IP D:BP●地址锁存发生在指令周期的( A )时刻。
A:T1 B:T2 C:T3 D:T4●8086CPU读数据操作在总线周期的( D )时刻。
A:T1 B:T1,T2 C:T2,T3 D:T3,T4●8086CPU写数据操作在总线周期的( D )时刻。
A:T1 B:T2 C:T2,T3 D:T2,T3,T4●8086与外设进行数据交换时,常会在( C )后进入等待周期。
A:T1 B:T2 C:T3 D:T4●计算机中数据总线驱动器采用的基本逻辑单元是( C )。
A:反相器B:触发器C:三态门D:译码器●计算机中地址锁存器采用的基本逻辑单元是( B )。
A:反相器B:触发器C:三态门D:译码器●计算机中地址锁存器的输出信号状态是( B )。
A:单向双态B:单向三态C:双向双态D:双向三态●8086CPU从功能结构上看,是由( D )组成A:控制器和运算器B:控制器,运算器和寄存器C:控制器和20位物理地址加法器D:执行单元和总线接口单元●执行指令IRET后弹出堆栈的寄存器先后顺序为( D )。
A:CS、IP、F B:IP、CS、F C:F、CS、IP D:F、IP、CS●下列逻辑地址中对应不同的物理地址的是( C )。
微机原理第二章习题答案
《微处理器系统原理与嵌入式系统设计》第二章习题解答2.2 选择题(1) 下列无符号数中最小的数是( A )。
A.H(1,1011,0101)(01A5)B.B(3764)C.D(2590)D.O(2) 下列无符号数中最大的数是( B )。
A.B(10010101)B.O(227)C.H(96)D.D(143)(3) 在机器数( A )中,零的表示形式是唯一的。
A.补码B.原码C.补码和反码D.原码和反码(4) 定点8位字长的字,采用2的补码形式时,一个字所能表示的整数范围为( A )。
A.-128~+127 B.-127~+127C.-129~+128 D.-128~+128(5) 若下列字符码(ASCII)中有奇偶校验位,但没有数据错误,那么采用偶校验的字符码是( D )。
A.B.C. D.(6) 单纯从理论出发,计算机的所有功能都可以交给硬件实现。
而事实上,硬件只实现比较简单的功能,复杂的功能则交给软件完成。
这样做的理由是( BCD )。
A.提高解题速度B.降低成本C.增强计算机的适应性,扩大应用面D.易于制造(7) 编译程序和解释程序相比,编译程序的优点是( D ),解释程序的优点是( C )。
A.编译过程(解释并执行过程)花费时间短B.占用内存少C.比较容易发现和排除源程序错误D.编译结果(目标程序)执行速度快(8) 计算机的存储器采用分级存储体系的主要目的是( D )。
A.便于读写数据B.减小机箱的体积C.便于系统升级D.解决存储容量、价格和存取速度之间的矛盾(9) 在多级存储体系中,cache-主存结构的作用是解决( D )问题。
A.主存容量不足B.主存与辅存速度不匹配C.辅存与CPU速度不匹配D.主存与CPU速度不匹配(10) 下列说法中正确的是( CD )。
A.虚拟存储器技术提高了计算机的速度B.cache与主存统一编址,cache的地址空间是主存地址空间的一部分C.主存是由易失性的随机读写存储器构成的D.cache的功能全部由硬件实现(11) 在CPU与外设之间设计接口电路的目的主要有( ABCD )。
微机原理第2章习题答案
第2 章习题参考答案1 8086CPU 由哪两局部构成它们的主要功能是什么?答:8086CPU由两局部组成:指令执行部件(E U,E x e c u t i o n U n i t)和总线接口部件(B I U,B u s I n t e r f a c e U n i t)。
指令执行部件〔EU〕主要由算术逻辑运算单元(A L U),标记存放器F R,通用存放器组和 EU 限制器等 4 个部件组成。
其主要功能是执行指令。
总线接口部件(B I U)主要由地址加法器, 专用存放器组,指令队列和总线限制电路等4 个部件组成。
其主要功能是形成访问存储器的物理地址, 访问存储器并取指令暂存到指令队列中等待执行,访问存储器或I/O端口读取操作数参与 EU 运算或存放运算结果等。
2.8086C P U预取指令队列有什么好处?8086CPU 内部的并行操作表达在哪里?答:8086CPU 的预取指令队列由 6 个字节组成。
根据 8086CPU 的设计要求,指令执行部件〔EU〕在执行指令时,不是直接通过访问存储器取指令,而是从指令队列中取得指令代码,并分析执行它。
从速度上看,该指令队列是在 CPU 内部,EU 从指令队列中获得指令的速度会远远超过直接从内存中读取指令。
8086CPU 内部的并行操作表达在指令执行的同时,待执行的指令也同时从内存中读取并送到指令队列。
3.8086CPU 中有哪些存放器?各有什么用途?答:CPU 有 14 个内部存放器,可分为 3 大类:通用存放器,限制存放器和段存放器。
通用存放器是一种面对存放器的体系构造,操作数可以直接存放在这些存放器中,既可减少访问存储器的次数,又可缩短程序的长度,提高了数据处理速度,占用内存空间少。
指令执行部件〔EU〕设有 8 个通用存放器:AX:累加器,一般用来存放参与运算的数据和结果,在乘,除法运算,I/O操作,BCD 数运算中有不可替代的作用BX:基址存放器,除可作数据存放器外,还可放内存的逻辑偏移地址CX:计数存放器,既可作数据存放器,又可在串指令和移位指令中作计数用DX:DX 除可作通用数据存放器外,还在乘, 除法运算,带符号数的扩展指令中有特别用途源变址存放器SI:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在 DS 存放器中,也可放数据目标变址存放器D I:多用于存放内存的逻辑偏移地址,隐含的逻辑段地址在 DS 存放器中,也可放数据基址指针 BP:用于存放内存的逻辑偏移地址,隐含的逻辑段地址在 SS 存放器中堆栈指针 SP:用于存放栈顶的逻辑偏移地址,隐含的逻辑段地址在 SS 存放器中限制存放器包括指令指针存放器I P和标记存放器F L A G:I P 用来指示当前指令在代码段的偏移位置。
李伯成《微型计算机原理及应用》课后习题答案
李伯成《微机原理》习题第一章本章作业参考书目:①薛钧义主编《微型计算机原理与应用——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=150DX=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=364DX=1101101B=1*26+1*25+0*24+1*23+1*22+0*21 +1*20=64D+32D+0D+8D+4D+0D+1D=109D1.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.703125D1.3 将下列十进制整数转换成二进制数:(1)X=254D=11111110B(2)X=1039D=10000001111B(3)X=141D=10001101B1.4 将下列十进制小数转换成二进制数:(1)X=0.75D=0.11B(2) X=0.102 D=0.0001101B(3) X=0.6667D=0.101010101B1.5 将下列十进制数转换成二进制数(1) 100.25D= 0110 0100.01H(2) 680.75D= 0010 1010 1000.11B1.6 将下列二进制数转换成十进制数(1) X=1001101.1011B =77.6875D(2) X=111010.00101B= 58.15625D1.7 将下列二进制数转换成八进制数(1)X=101011101B=101’011’101B=535Q(2) X=1101111010010B=1’101’111’010’010B=15722Q(3) X=110B=6Q1.8 将下列八进制数转换成二进制数:(1)X=760Q=111'110'000B(2)X=32415Q=11'010'100'001'101B1.9 将下列二进制数转换成十六进制数:X=101 0101 1110 1101B= 5 5 E D HX= 1100110101'1001B= 11 0011 0101 1001B= 3 3 5 9HX= 1000110001B= 10 0011 0001 B= 2 3 1 H1.10 将下列十六进制数转换成二进制数:X= ABCH= 1010 1011 1100 BX=3A6F.FFH = 0011 1010 0110 1111.1111 1111BX= F1C3.4B =1111 0001 1100 0011 . 0100 1011B1.11 将下列二进制数转换成BCD码:(1) X= 1011011.101B= 1'011'011.101B= 91.625d=1001 0001.0110BCD(2) X=1010110.001B= 1’010’110.001 =126.1 BCD1.12 将下列十进制数转换成BCD码:(1)X=1024D=0001 0000 0010 0100 BCD(2)X=632 = 0110 0011 0010 BCD(3)X= 103 = 0001 0000 0011 BCD1.13 写出下列字符的ASCI I码:A 41H 65D 0100 0001B9 39H 47D* 2AH 42D= 3DH 45D!21H 33D1.14 若加上偶校验码,下列字符的ASCII码是什么?字符原码加上偶校验码之后B 42H,0100 0010B 42H,0100 0010B4 34H,0011 0100B B4H,1011 0100B7 37H,0011 0111B B7H,1011 0111B= 3DH,0011 1101B BDH,1011 1101B!21H,0010 0001B 21H,0010 0001B?3FH 0011 1111B 3FH,0011 1111B1.15 加上奇校验,上面的结果如何?字符原码加上奇校验码之后B 42H,0100 0010B C2H,1100 0010B4 34H,0011 0100B 34H,0011 0100B7 37H,0011 0111B 37H,0011 0111B= 3DH,0011 1101B 3DH,0011 1101B!21H,0010 0001B A1H,1010 0001B?3FH 0011 1111B BFH,1011 1111B1.16 计算下式:(1)[‘B’/2+ABH-11011001B]*0.0101BCD=(42H/2+ABH-D9H)*0.21 BCD = = F3H*0.21 BCD =(-DH) *0.21 BCD= -2.73D(2) 3CH –[(84D)/(16Q)+’8’/8D]= 60D-[84D/14D+(56/8)]=60D-[13]D==47D1.17 对下列十进制数,用八位二进制数写出其原码、反码和补码:(正数的反码与原码相同,负数的反码除符号位之外其余各位按位取反。
《微型计算机原理及应用》课后习题答案
《微型计算机原理及应用》习题解答第一章基础知识1.1 解释题(1)微处理器【解答】由大规模集成电路芯片构成的中央处理器(CPU),叫做微处理器。
(2)微型计算机【解答】以微处理器为基础,配以内存储器、输入输出接口电路、总线以及相应的辅助电路而构成的计算机裸机,叫做微型计算机。
(3)微型计算机系统【解答】微型计算机系统由硬件系统和软件系统组成。
即由微型计算机、配以相应的外部设备(如打印机、显示器、键盘、磁盘机等),再配以足够的软件而构成的系统。
(4)单板机【解答】将微处理器、RAM、ROM以及I/O接口电路,再配上相应的外设(如小键盘、LED显示器等)和固化在ROM中的监控程序等,安装在一块印刷电路板上构成的微型计算机系统称为单板机。
(5)运算器【解答】运算器是直接完成各种算术运算、逻辑运算的部件,主要由ALU(Arithmetic and Logic Unit,算术逻辑部件)、通用寄存器、标志寄存器等组成。
(6)地址总线【解答】地址总线是CPU对内存或外设进行寻址时,传送内存及外设端口地址的一组信号线。
地址总线的条数多少决定了CPU的寻址能力。
(7)数据总线【解答】数据总线是CPU与内存或外设进行信息交换时,所用的一组数据信号线。
它决定了CPU 一次并行传送二进制信息的位数,反映出CPU的“字长”这个重要性能指标。
(8)控制总线【解答】控制总线是在CPU与外部部件之间传送控制信息(如读/写命令、中断请求命令等)的一组信号线。
1-2 单片机应包括哪些基本部件?其主要应用于哪些领域?【解答】一般单片机芯片中包括微处理器、RAM、ROM、I/O接口电路、定时器/计数器,有的还包括A/D、D/A转换器等。
其主要应用于智能化仪器仪表及工业控制领域。
1-3 按图1-11和图1-12,写出取第二条指令操作码和执行第二条指令的过程。
【解答】ADD AL,12H指令的取指过程:1)IP的值(002H)送入地址寄存器AR;2)IP的内容自动加1,变为003H;3)AR将地址码通过地址总线送到存储器的地址译码器,经译码后选中002H单元;4)微处理器给出读命令MEMR;5)所选中的002H单元内容04H送上数据总线DB;6)数据总线DB上的数据04H送到数据寄存器DR;7)因是取指操作,取出的是指令操作码04H,即由DR送入指令寄存器IR;8)IR中的操作码经指令译码器ID译码后,通过PLA发出执行该指令的有关控制命令。
微机原理及应用 第2章 习题及答案
CH02 8086/8088指令系统习题与思考题1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量V AL的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式?源操作数在哪里?如在存储器中请写出其物理地址是多少?(1)MOV AX,0ABH (2)MOV AX,[100H](3)MOV AX,V AL (4)MOV BX,[SI](5)MOV AL,V AL[BX] (6)MOV CL,[BX][SI](7)MOV V AL[SI],BX (8)MOV [BP][SI],100解答:(1)MOV AX,0ABH寻址方式:立即寻址;源操作数在数据线上;物理地址:无(2)MOV AX,[100H]寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+100H=2000H*16+100H=20100H(3)MOV AX,V AL寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+V AL=2000H*16+0050H=20050H(4)MOV BX,[SI]寻址方式:寄存器间接寻址;源操作数在存储器中;物理地址:DS*16+SI=2000H*16+00A0H=200A0H(5)MOV AL,V AL[BX]寻址方式:变址寻址;源操作数在存储器中;物理地址:DS*16+V AL+BX=2000H*16+0050H+0100=20150H(6)MOV CL,[BX][SI]寻址方式:基址加变址寻址;源操作数在存储器中;物理地址:DS*16+BX+SI=2000H*16+0100H+00A0H=201A0H(7)MOV V AL[SI],BX寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无(8)MOV [BP][SI],100寻址方式:立即寻址;源操作数在;物理地址:无2.设有关寄存器及存储单元的内容如下:DS=2000H,BX=0100H,AX=1200H,SI=0002H,[20100H]=12H,[20101H]=34H,[20102H]=56H,[20103]=78H,[21200]=2AH,[21201H]=4CH,[21202H]=0B7H,[21203H]=65H。
西南交大 微机原理及应用 第二章 答案
微机原理第二章习题答案2-1.解释下列概念:(1)分时复用总线——不同的时刻通过相同的总线引脚传送不同的信息(2)逻辑地址——程序员在程序中使用的地址。
(3)物理地址——又称实际地址PA,是CPU和存储器进行数据交换时所采用的地址。
(4)字地址——如果存放16位的字数据,则需要占用连续的两个单元,其中数据的高8位存放在地址较大的单元,低8位存储在地址较小的单元,并以该单元的值作为该子数据的字地址。
(5)字节地址——8086系统地址总线有20条,内存空间都按字节组织,每个内存单元存储一个字节的数据,并具有一个唯一的20位地址编号,称为字节地址。
(6)规则字——对于16位字数据,若其字地址为偶数,即从地址为偶数的单元开始存放,则称该字数据为规则字。
(7)非规则字——若其字地址为奇数,即从地址为奇数的单元开始存放,则称该字数据为非规则字。
(8)指令周期——执行一条指令所需要的时间称为指令周期。
总线周期——CPU每占用一次系统总线,进行信息的输入输出所需要的时间就成为总线周期。
时钟周期——2-2. 简述8086/8088采用的重叠解释方式对指令和程序的解释过程及其特点。
在8086系统中,为了加快程序的执行速度,采用了重叠解释方式,各条指令的解释过程是重叠进行的。
每条指令的解释过程也包括取指令和执行指令两个阶段,但是相邻两条指令的解释过程有一部分是同时进行的。
在执行一条指令时,可以同时取出下一条指令。
在当前指令执行完毕后,就可以立即制行下一条指令。
这种重叠解释方式大大加快了程序的执行速度。
2-3.简述8086CPU内部组成以及EU和BIU的作用。
8086微处理器内部配分为两个独立的功能部件:执行部件EU和总线接口部件BIU。
执行部件由通用寄存器、标志寄存器、算术逻辑单元和EU控制系统等组成,专门负责指令的执行,即从指令队列缓冲器中获得指令,然后执行该指令,完成指令规定的操作。
总线接口部件由段寄存器、指令指针、地址形成逻辑、总线控制逻辑和指令队列缓冲器等组成。
《微机原理及应用》课后答案(黄冰 覃伟年 著)习题参考答案
《微机原理》习题参考答案第一章绪论1.2①[+65]10=01000001B [+65]补=[+65]原=01000001B②[+115]10=01110011B [+115]补=[+115]原=01110011B③[-65]10=11000001B [-65]补=10111111B[-115]10=11110011B [-115]补=10001101B方法:正数的原码、反码、补码相同负数的补码在原码的基础上除过符号外,先取反,再加1。
1.3①[+120]10=0000000001111000B [+120]补=[+120]原=000000001111000B②[-120]10=1000000001111000B [-120]补=1111111110001000B③[+230]10=0000000011100110B [+230]补=[+230]原=0000000011100110B④[-230]10=1000000011100110B [-230]补=1111111100011010B方法:与上题相同,只是扩展了位数,用16位表示1.4①55 (00110111)②89 (01011001)③-115 (11110011)④-7总结:知道补码,求原码(或数值)的方法:如果是正数,直接转换。
如果是负数用以下三种方法:①根据[[X]补]补=X 求得例如10001101 各位取反11110010 加一11110011转换-115②求补的逆运算例如:11111001 先减一11111000 各位取反10000111 转换-7③-(模+补码转换结果)例如:10001101转换-13模+补码转换结果128-13=115 加负号–1151.9本题问题不太明确例如:如果手边有手册或是知道产品的型号,就可从手册中查到微处理器的处理位数。
也可以根据系统总线得知。
因为系统总线是公共的数据通道,表现为数据传输位数和总线工作时钟频率。
《微机原理及应用》各章习题参考答案
《微机原理及应用》各章习题参考答案第1章微型计算机概论一、填空题1. 微机硬件系统主要由CPU、(存储器)、(总线)、(输入输出接口)和输入输出设备组成。
2. 冯·诺依曼计算机的核心原理是(存储程序原理)3. 完成下列数制的转换1)10100110B=( 166 )D=( A6H )H2)223.25 =( 11011111.01 )B=( DF.4 )H3)1011011.101B=( 5B.A )H=(1001 0001.01100010 0101 )BCD4. 已知[X]补5. 已知A=10101111,B=01010000,则A∧B的结果为( 00000000 ) B=86H,则X的十进制表示形式为( -122 )6. -29H的8位二进制反码是(11010110 )B7.字符4的ASCII码=( 34 )H二、简答题1.冯.诺依曼计算机的结构是怎样的,主要特点有哪些?解:将计算机设计为由运算器、控制器、存储器、输入设备和输出设备等5个部分组成,所有的执行都以运算器为核心,采用存储程序工作原理。
2. 已知X=-1101001B,Y=-1010110B,用补码方法求X-Y=?解:[X-Y]补=[X+(-Y)]补= [X]补+[-Y] [X]补原=11101001B [X]补 [-Y]=10010111B原=01010110B=[-Y] [X-Y]补补= [X]补+[-Y]补X-Y=[[X-Y]=11101101B补]补=10010011=-0010011=-193. 写出下列真值对应的原码和补码的形式:1)X=-1110011B2)X=-713)X=+1001001B解:1)[X]原码=11110011B , [X]补码=10001101B2)[X]原码=11000111B, [X]补码=10111001B3)[X]原码=01001001, [X] 补码=01001001B=?4. 已知X和Y的真值,求[X+Y]补1)X=-1110111B Y=+1011010B2)X=56 Y=-215. 若与门的输入端A、B、C的状态分别为1、0、1,则该与门的输出端状态为?若将这3位信号连接到或门,那么或门的输出又是什么状态?解:由与和或的逻辑关系知,若“与”门的输入端有一位为“0”,则输出为“0”;若“或”门的输入端有一位为“1”,则输出为“1”。
(完整word版)《微机原理及应用》习题答案
(完整word版)《微机原理及应用》习题答案《微机原理及应用》习题答案教材:《80X86/Pentium微型计算机原理及应用》答案第一章计算机基础1-3(1)01101110 真值=110(2)10001101 真值=-131-4(1)+010111[+010111]原=[+010111]反=[+010111]补=00010111 (2) +101011[+101011]原=[+101011]反=[+101011]补=00101011 (3) –101000[-101000]原=10101000 [-101000]反=11010111 [-101000]补=11011000(4) -111111[-111111]原=10111111 [-111111]反=11000000 [-111111]补=110000011-6(1) [x1+y1]补=[x1]补+ [y1]补=00010100+00100001=00110101(2)[x2-y2]补=[x2]补+ [-y2]补=11101100+00100001=000011011-7 (1)85+60解:[-85]补=10101011 [60]补=00111100[-85]补+[60]补=10101011+00111100=11100111 (11100111)补=10011001 真值=-25CS=0,CP=0, CS⊕CP=0 无溢出(4)-85-60[-85]补=10101011 [-60]补=11000100[-85]补+[-60]补=10101011+11000100=101101111 CS=1, CP=0 CS⊕CP=1 有溢出1-8(1) [x]补+ [y]补=01001010+01100001=10101011 CS=0, CP=1 CS⊕CP=1 有溢出(2) [x]补- [y]补=[x]补+ [-y]补=01001010- 01100001=01001010+10101010=100010110CS=1, CP=1 CS⊕CP=0 无溢出1-9(1) (127)10=(000100100111)BCD(2) (74)H=(116)10=(000100010110)BCD1-10(1) 41H 代表A(2) 72H 代表r(3) 65H 代表e(4) 20H 代表SP1-14(1) 69.57(69.57)10=(1000101.100)B=0.1000101100 X 27=0.1000101100 X 2+111浮点规格数为011101000101(2)-38.405(-38.405)10=(-100110.011)B-100110.011= -0.100110011 x 26 = - 0.100110011 x 2110浮点规格数为011011001100(3) - 0.3125(-0.3125)10=(-0.0101)2=(-0.101)2 x 2-001浮点规格数为1111110100001.+0.008342.(+0.00834)10=(0.000000100010001)2=(0.100010001)2 x 2-1103.浮点规格数为1010010001004.1-155.(1) (69.57)10=(1000101.10010001111010111)26. =(1.00010110010001111010111)2 x 21107. p=6+127=133=(10000101)28.单精度浮点数为010000101000101100100011110101119.(2)(-38.405)10=(-100110.011001111010111000)210. = - (1.00110011001111010111000)2 x 210111. p=5+127=132=(10000100)212.单精度浮点数为1100001000011001100111101011100013.(3) (-0.3125)10=(-0.0101)2=(-1.01)2 x 2-1014. p=-2+127=125=(1111101)215.单精度浮点数为10111110101000000000000000000000第二章 80X86/Pentium 微处理器2-3IO/M DT/R DEN RD WR读存储器 0 0 0 0 1写存储器 0 1 0 1 02-17PA=CS x 16+IP IP的范围为0000H~FFFFH 而CS为A000H因此PA的范围即现行代码段可寻址的存储空间范围为A0000H~AFFFFH2-201234ABCDH=00010010001101001010101111001101 BPA=SS x 16+SP=A0000H+0100H=A0100H栈顶SP=0100H-4=00FCH11001101 A00FCH101010110011010000010010 A0100F2-21(1) 1278H+3469H=0001 0010 0111 1000+0011 0100 0110 1001=0100 0110 1110 0001SF=0 ZF=0 AF=1 PF=1 CF=0 OF=0(2) 54E3H-27A0H=0101 0100 1110 0011+1101 1000 0110 0000=1 0010 1101 0100 0011SF=0 ZF=0 AF=1 PF=0 CF=0 OF=0当进行16位或8位加或减运算时,若最高位产生进位或借位时,将CF置1,否则为0,当进行带符号数补码运算时,运算结果超出了机器所能表示的数值范围,就产生溢出,将OF置1,否则OF置0,即OF用来表示有符号数运算的溢出,而CF则用来表示无符号数运算的溢出。
8086微型计算机原理与应用(吴宁)习题答案(第二章)
8086微型计算机原理与应用(吴宁)习题答案(第二章)
第二章微处理器结构
2-14 存储空间范围 CS×16+0000H — CS×16+FFFFH 即 A0000H—AFFFFH 2-15 段首址为B0000H ,段基地址为B0000H/16 =B000H,即DS=B000H
2-16 双字应存放于4个单元,从首地址(偏移地址)为A001H的单元开始存放,按高字节
存于高地址单元,低字节存于低地址单元的原则,所以 A001H单元中,存放78H, A002H单元中存放56H, A003H单元中存放34H,A004H单元中存放12H 。
2-17 8086/8088堆栈为向下生长型的,压入堆栈的数据存放方式为高字节存高地址单元,
双字1234ABCDH压入时高字节12H先存入,然后34H存入,最后CDH存入。
压入数据后,栈顶SP=00FCH
2-18 写出运算后的状态标志
(1) 1278H+3469H
0001001001111000
+ 0011010001101001
0100011011100001
PF=1 AF=1 CF=0 SF=0 ZF=0 OF=0
(2) 54E3H-27A0H
0101010011100011
+ 1101100001100000
0010110101000011
PF=0 AF=0 CF=0 SF=0 ZF=0 OF=0。
2_微机原理及应用_第三版__课后答案_(晏寄夫_著)_西南交通大学出版社 很全
1.9、 设机器字长为 8 位,最高位为符号位,用双高位法判别下述各二进制运算是否产生溢出,并说明是正溢 出还是负溢出。 (1) 43+8; (2)-52+7; (3)50+84; (4)72-8; (5) ( - 33)+(-47); (6) ( - 90)+(-75); (7)-127+60 [解] (1) 43+8 [43]补→ 00101011B +) [ 8]补→00001000B 00110011B Cs=0,Cp=0 V=Cs⊕Cp=0 无溢出 (4) 72-8 [72]补→ 01001000B +) [-8]补→11111000B 1┇ 11000000B Cs=1,Cp=1 V=Cs⊕Cp=0 无溢出 (2)-52+7 [-52]补→11001100B +) [7]补→ 00000111B 11010011B Cs=0,Cp=0 V=Cs⊕Cp=0 无溢出 (5)-33+(-47) [-33]补→ 11001100B +) [-47]补→ 11010001B 1┇ 10110000B Cs=1,Cp=1 V=Cs⊕Cp=0 无溢出 (3)50+84 [50]补→ 00110010B 10000110B Cs=0,Cp=1 V=Cs⊕Cp=1 有溢出,正溢出 (6)(-90)+(-75) [-90]补→ 10100110B +) [-75]补→ 10110101B 1┇ 11011011B Cs=1,Cp=0 V=Cs⊕Cp=1 有溢出,负溢出 +) [84]补→ 01010100B
若侵犯了您的版权利益,敬请来信通知我们! ℡
(4) -26+6 [-26]补→ 11100110B +) [ 6]补→00000110B 11101100B→[-20]补 (7)-25-6; [-25]补→ 11100111B +) [-6]补→ 11111010B 1┊11100001B→[-31]补 1.8、 已知下列各数均为二进制补码:
《微机原理与应用》第二章测试题
《微型计算机原理与应用》阶段考试题一、填空题(每空0.5分,共20分)1、微型计算机系统是由和组成;硬件的五大部件是指运算器、存储器、_____________、_____________、输出设备。
2、存储器分为内存和外存两种,内存根据存取的方式不同分为和,其中断电后不再保留信息的。
3、指令是由和构成的。
4、逻辑地址由和两部分组成,是指段首物理地址的高16位值,_________是指该单元在段内与段首地址的字节距离。
5、堆栈是一个特定的存储区,主要用于暂存数据和断点地址。
它的一端固定,叫;一端浮动,叫,该地址始终是由SP指针指向的。
它的工作方式为;8088的堆栈采用了的编址方式。
6、Pentium微处理器内部由、、和地址生成单元构成。
7、构成微处理器的有效地址有三个分量,分别、、。
8、数据存储器的寻址方式有立即寻址、、______________、寄存器间接寻址、变址寻址、、共七种。
9、总线按功能不同分为、、。
10、微处理器的基本寄存器分为________________、_______________、_____ _______和标志寄存器四大类。
11、标志位分为_____________和_____________两种类型。
12、AX的名称为__________________;BX的名称为___________________。
13、输入输出接口的功能有________________、_______________、联络作用。
二、判断题(每题1分,共10分)1、物理地址和逻辑地址都是绝对的、唯一的。
()2、物理地址= 段基值*10 + 偏移量度。
()3、可在数据段内寻址的寄存器有BX、BP、SI、DI。
()4、在8086型微处理器中,存在9个标志位寄存器。
()5、数据总线和地址总线是双向总线。
()6、带符号数87H与01H相加,则溢出标志位OF为0。
()7、EDI是一个32位的通用寄存器。
微机原理及应用参考答案
参考答案第一章计算机中的数制和码制第二章计算机概述一、填空题1.82. 23.10244.25.5、11001.1、00100101.0101B5.1000010B、42H、66H6.41.625、29.AH7.10001101B8.11001001、110010109.-128 ~ +12710.系统软件、应用软件11.电子管、超大规模集成电路二、单选题1. A 2. C 3. D4. C 5. A 6. C三、分析简答题1.8086 CPU的总线根据其中信息传送的类型可分为几种?哪几种?答:8086 CPU的总线根据其中信息传送的类型可分为三种种,分别是:数据总线、地址总线和控制总线2.写出-25的原码、反码、补码,并将补码转换成十六进制数(设机器字长为8位)。
答:X=-25=-11001BX原码:10011001BX反码:11100110BX补码:11100111B = E7H3.举例说明什么是机器数,什么是真值?答:将符号数值化了的数称为机器数。
如:-18=-10010B(真值);机器数为:10010010B第三章半导体存贮器一、填空题1.ROM、RAM2.6个3.8、4二、单选题1. A 2. B 3. D 4. B5. C 6. C 7. B三、分析简答题1.在对存储器芯片进行片选时,全译码方式、部分译码方式和线选方式各有何特点?答:①全译码方式:存储器芯片中的每一个存储单元对应一个唯一的地址。
译码需要的器件多;②部分译码方式:存储器芯片中的一个存储单元有多个地址。
译码简单;③线选:存储器芯片中的一个存储单元有多个地址。
地址有可能不连续。
不需要译码。
四、硬件接口设计题1.答:(1)(2) 存储器类型为RAM 总容量为4K×8地址范围: 0#2000H-27FFH1# 2800H-2FFFH2.答:(9分)(1)存储器类型:RAM该系统的存储器容量为:6K×8位(或:6K字节)(2)1#芯片的地址范围:1000H ~ 17FFH2#芯片的地址范围:0800H ~ 0FFFH3#芯片的地址范围:0000H ~ 07FFH3.1)1K×42)2K×8或2KB3)地址分配范围第一组:A19~ A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0最小地址0 ~ 0 0 0 0 0 0 0 0 0 0 0 00000H~ 最大地址0 ~ 0 1 1 1 1 1 1 1 1 1 1 003FFH 第二组:0 ~ 1 0 0 0 0 0 0 0 0 0 0 00400H~0 ~ 1 1 1 1 1 1 1 1 1 1 1 007FFH第四章微型计算机及微处理器的结构和组成一、填空题1.BIU、EU、指令的译码和指令执行2.4、16、16、6、203.8、164.1、2二、单选题1. B 2. B三、分析简答题1.8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。
《微机原理及应用》第二章习题答案_晏寄夫
2-10.[解]逻辑地址为: 0FFFFH:0000H,物理地址PA=0FFFF0H2-11.[解]2-12.有一个由20个字组成的数据区,其起始地址为610AH:1CE7H,试写出该数据区首末单元的实际地址PA。
[解]首地址PA=62D87H,末地址PA=62DAEH。
2-13.存储器中每一个段最多为64K字节,当程序routadf运行后,用DEBUG命令显示出当前各寄存器的内容如下,要求:(1)画出此时存储器分段示意图;(2)写出各状态标志的值。
B>C:debug routadf.exe-rAX=0000 BX=0000 CX=006D DX=0000 SP=00C8 BP=0000 SI=0000 DI=0000DS=53A7 ES=11A7 SS=21BE CS=31B8 IP=0000 NV UP EI PL NZ NA PO NC[解](1) 数据段:53A70H~63A6FH ;附加段:11A70H~21A6FH 堆栈段:21BE0H~31BDFH ;代码段:31B80H~41B7FH只有堆栈段和代码段之间有地址重叠,其它段之间均无重叠。
(2) OF=0 DF=0 IF=1 SF=0 ZF=0 AF=0 PF=0 CF=02-14.已知SS=20A0H,SP=0032H,AX=0FF42H,SI=537AH,BL=5CH,将CS=0A5BH,IP=0012H推入堆栈后,再执行下列指令,PUSH AXPUSH BX ;位置1PUSH SI ;位置2POPF ;位置3(1)画出堆栈存放示意图;(2)画出指令执行到位置1、位置2和位置3时堆栈区及SP指针内容的变化示意图。
图中应标出存储单元的实际地址PA。
[解]20A28H 7A SI SP=0028H②20A29H 5320A2AH 5C BX SP=002AH①③20A2BH X X20A2CH 42 AX20A2DH F F20A2EH 12 IP20A2FH 0020A30H 5B CS20A31H 0ASP=0032H 20A32H X X。
微机原理第二章习题答案
微机原理第二章习题答案2.3 习题解答1.选择题:答案:(1)E (2)A (3)D (4)C2.填空题:答案:a)EU,16,BIU,BIU,20b)20,4,状态c)0FFFF0H,ROM,跳转d)2,512K,奇地址,BHEe)64K,16f)逻辑地址g)空闲h)总线请求(输入)/总线请求允许(输出),G T/ RQ0,1G T/RQ3.8086/8088 CPU的地址总线有多少位?其寻址范围是多少?答:8086/8088 CPU的地址总线共20位,最大可寻址1MB空间。
4.什么是总线?一般微计算机中有哪些总线?答:总线是微机系统之间、系统各模块之间或模块内部以及芯片内部各部分之间用来传送信息的公共信息通路,是计算机传送信息的一组导线,它将各部件连接成一个整体。
总线有多种分类方法,按总线在微机中所处位置的不同(或按总线上信息传送范围的不同)来看,微机中包括片内总线、片间总线、系统内总线和系统外总线四级总线。
5.8086/8088 CPU分为哪两个部分?各部分主要由什么组成?答:8086/8088 CPU分为总线接口部件(BIU)和执行部件(EU)两个部分。
其中:BIU包括:4个16位的段地址寄存器(CS、DS、SS、ES);1个16位的指令指针寄存器IP;1个20位的地址加法器;指令队列寄存器;CF=0。
PF(Parity/Even Flag)奇偶标志:如果运算结果中含有偶数个1,则PF=1,否则PF=0。
此标志位主要用于数据通信中,检测数据传送有无出错。
AF(Auxiliary Carry Flag)辅助进位标志:用于反映一个字节(字的低字节)的低4位向高4位有无进位(借位)的情况,有进(借)位时,AF=1,否则AF=0。
这个标志位主要用于实现BCD码算术运算所需的二-十进制调整之用。
ZF(Zero Flag)零标志:若运算结果为0,此标志为1;否则ZF=0。
SF(Sign Flag)符号标志:因为补码运算的最高位是符号位,所以它和运算结果的最高位(字节操作是D7位,字操作是D15位)状态相同。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
CH02 8086/8088指令系统
习题与思考题
1.假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL的偏移地址为0050H,请指出下列指令源操作数是什么寻址方式?源操作数在哪里?如在存储器中请写出其物理地址是多少?
(1)MOV AX,0ABH (2)MOV AX,[100H]
(3)MOV AX,VAL (4)MOV BX,[SI]
(5)MOV AL,VAL[BX] (6)MOV CL,[BX][SI]
(7)MOV VAL[SI],BX (8)MOV [BP][SI],100
解答:
(1)MOV AX,0ABH
寻址方式:立即寻址;源操作数在数据线上;物理地址:无
(2)MOV AX,[100H]
寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+100H=2000H*16+100H=20100H
(3)MOV AX,VAL
寻址方式:直接寻址;源操作数在存储器中;物理地址:DS*16+VAL=2000H*16+0050H=20050H
(4)MOV BX,[SI]
寻址方式:寄存器间接寻址;源操作数在存储器中;物理地址:DS*16+SI=2000H*16+00A0H=200A0H
(5)MOV AL,VAL[BX]
寻址方式:变址寻址;源操作数在存储器中;物理地址:DS*16+VAL+BX=2000H*16+0050H+0100=20150H
(6)MOV CL,[BX][SI]
寻址方式:基址加变址寻址;源操作数在存储器中;物理地址:DS*16+BX+SI=
2000H*16+0100H+00A0H
=201A0H
(7)MOV VAL[SI],BX
寻址方式:寄存器寻址;源操作数在寄存器中;物理地址:无
(8)MOV [BP][SI],100
寻址方式:立即寻址;源操作数在;物理地址:无
.设有关寄存器及存储单元的内容如下:2.
DS=2000H,BX=0100H,AX=1200H,SI=0002H,[20100H]=12H,[20101H]=34H,[20102H]=56H,[20103]=78H,[21200]=2AH,[21201H]=4CH,[21202H]=0B7H,[21203H]=65H。
试说明下列各条指令单独执行后相关寄存器或存储单元的内容。
(1)MOV AX,1800H (2)MOV AX,BX
(3)MOV BX,[1200H] (4)MOV DX,1100[BX]
(5)MOV [BX][SI],AL (6)MOV AX,1100[BX][SI]
解答:
3.假定BX=0E3H,变量VALUE=79H,确定下列指令执行后的结果(操作数均为无符号数。
对3、6,写出相应标志位的状态)。
(1)ADD VALUE,BX (2)AND BX,VALUE
(3)CMP BX,VALUE (4)XOR BX,0FFH
(5)DEC BX (6)TEST BX,01H
解答:
4.已知SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指令,试画出堆栈区和SP内容变化的过程示意图。
(标出存储单元的地址)
解答:
0FFA0H0FFA0H堆栈段SS=堆栈段SS=
FFAABHFFAABHFFAACH00ACHFFAACH00ACHFFAADH00ADHFFAADH00ADH57HFFAAEH00AEHFF AAEH00AEHFFAAFH00AFHFFAAFH00AFH80HFFAB0H00B0HX0FFA0:FFAB0H0FFA0:
00B0HX············00AEH)SP=AX;(AX=8057H②PUSH00B0H①初始状态;SP=0FFA0H=堆栈段SS0FFA0H=堆栈段
SS FFAABHFFAABH79HFFAACH00ACHFFAACH00ACH0FHFFAADH00ADHFFAADH00ADH57H57H00A EHFFAAEHFFAAEH00AEHFFAAFH80H00AFHFFAAFH80H00AFHFFAB0HX0FFA0:
00B0HFFAB0HX0FFA0:00B0H············③PUSH BX;(BX=0F79H)SP=00ACH④POP BX;SP =00AEH
5.已知程序段如下:
MOV AX,1234H
MOV CL,4
ROL AX,CL
DEC AX
MOV CX,4
MUL CX
试问:(1)每条指令执行后,AX寄存器的内容是什么?(2)每条指令执行后,CF,SF及ZF的值分别是什么?(3)程序运行结束时,AX及DX寄存器的值为多少?
指令执行结果
ZF SF AX CF×××1234H=AX1234H,AX
MOV.
MOV CL,4AX=1234H×××
0AX=ROL2341H0AX,CL1010AX=AXDEC2340H
02340H CX,401AX=MOV0MUL0=8D00H,CX DX=0000H0AX
6.写出实现下列计算的指令序列。
(假定X、Y、Z、W、R都为字变量)
(1)Z=W+(Z+X)(2)Z=W-(X+6)-(R+9)
(3)Z=(W*X)/(R+6)(4)Z=((W-X)/5*Y)*2
解答:(1)Z=W+(Z+X)
7.假定DX=001B,CL=3,CF=1,试确定下列各条指令单独执行后DX的值。
(1)SHR DX,1 (2)SHL DL,1
(3)SAL DH,1 (4)SAR DX,CL
(5)ROR DX,CL (6)ROL DL,CL
(7)RCR DL,1 (8)RCL DX,CL
解答:
8.已知DX=1234H,AX=5678H,试分析下列程序执行后DX、AX的值各是什么?该程序完成了什么功能?
MOV CL,4
SHL DX,CL
MOV BL,AH
SHL BL,CL
SHR BL,CL
OR DL,BL
解答:DX=2345H,AX=6780H。
该程序完成的功能如图所示,将DX,AX拼装成双字后,左移
四位。
DXDX32124034DXAX78620345AXAX86708567
9.试分析下列程序段:
ADD AX,BX
JNC L2
SUB AX,BX
JNC L3
JMP SHORTL5
如果AX、BX的内容给定如下:
AX BX
(1)14C6H 80DCH
(2)B568H 54B7H
问该程序在上述情况下执行后,程序转向何处?
解答:(1)AX=AX+BX=14C6H+80DCH=95A2H;CF=0;无进位,转移至L2;
(2)AX=AX+BX=B568H+54B7H=0A1FH;CF=1;有进位,继续执行;
AX=AX-BX=0A1FH+54B7H=B568H;CF=1;有借位,继续执行;
无条件转移至SHORTL5
10.编写一段程序,比较两个5字节的字符串OLDS和NEWS,如果OLDS字符串不同于NEWS,否则顺序执行。
NEW_LESS字符串,则执行
解答:编程如下,(说明:左测程序为常规编法,两个字符串在一个数据段中;右测的程序
要求OLDS在数据段中,NEWS在附加段中,利用串操作的指令是可行的)
LEA SI,OLDS; LEA SI,OLDS
LEA DI,NEWS; LEA DI,NEWS
MOV CX,5; MOV CX,5
NEXT: MOV AL,[SI]; CLD
MOV BL,[DI]; REPE CMPSB
CMP AL,BL; JNZ NEW_LESS
JNZ NEW_LESS;……
INC SI; JMP EXIT
INC DI; NEW_LESS:
LOOP NEXT;……
…… EXIT:……
JMP EXIT
NEW_LESS:
……
EXIT:……
11.若在数据段中从字节变量TABLE相应的单元开始存放了0~15的平方值,试写出包含有XLAT 指令的指令序列查找N(0~15)的平方。
(设N的值存放在CL中)
解答:
MOV BX,OFFSET TABLE;LEA BX,TABLE
MOV CL,N
MOV AL,CL
XLAT
12.有两个双字数据串分别存放在ASC1和ASC2中(低字放低地址),求它们的差,结果放在ASC3中(低字放低地址)。
ASC1 DW 578,400 ASC2 DW 694,12
ASC3 DW ?,?
解答:编程如下,
LEA SI,ASC1
LEA DI,ASC2
LEA BX,ASC3
MOV CX,2
CLC
NEXT: MOV AX,[SI] MOV DX,[DI]
SBB AX,DX
MOV [BX],AX
INC SI
INC SI
INC DI
INC DI
INC BX
INC BX
LOOP NEXT。