1、1微机原理及应用重修综合练习题一、填空题二、分析简答题三、程序分析题四、编程题五、存放器扩展题六、输入输出接口题第1页2微机原理及应用重修一、填空题1.在计算机中:1Byte=8 bit,1Word=16 bit。2.对于十六进制数码64.8H,转换为十进制数时为 100.5 ;该数码看作8421BCD码时表示数据为 64.8 。3.对于十进制数18.5,用十六进制数表示时为 12.8 H;用压缩8421BCD码表示时为 18.5H 或(00011000.0101)。第2页3微机原理及应用重修4.设机器字长为8位,最高位是符号位。则十进制数127所对应原码为 11111111B ,补码为 10
2、000001B 。5.8086CPU内部结构可分为 EU 和 BIU 两部分。6.8086CPU 能够访问 8 位和 16 位存放器。7.8086CPU是 16 位CPU。8.设SP为H,则执行PUSH AX 后,SP=1FFE H。第3页4微机原理及应用重修9.逻辑地址是由 段基址 和 偏移地址 组成。其中,段存放器中存放是 段基址。10.将逻辑地址转换为物理地址公式是 段基址16偏移地址。11.设有逻辑地址1234H:1234H,试写出其对应物理地址 13574 H。12.一个含有16个字节数据变量,它逻辑地址为1000H:0100H,那么该变量最终一个字节数据物理地址是 1010F H。
3、第4页5微机原理及应用重修13.8086CPU对外数据线是 16 条,地址线是 20 条,它寻址能力为 1M 字节。14.数据线和地址线是以 分时复用 方式轮番使用。15.若有以下定义:ORG 0100H TAB DW 9876H 当执行:MOV AX,TAB后,(AX)=9876H ;而执行:LEA AX,TAB后,(AX)=0100H 。第5页6微机原理及应用重修16.若定义 A DB abcd,则(A+2)单元存放字节数据是 c 或 63H 。17.8086 CPU在I/O单独编址时,对I/O编址最多使用 16 条地址线,若要从地址为80H端口读入字节数据,则应该使用指令 IN AL,8
4、0H 。18.在8086系统(XT机)中使用可编程中止控制器型号是 8259A ,该芯片最少占用 2 个端口地址。第6页7微机原理及应用重修19.可编程定时/计数器8253含有 3 个 16 位定时/计数器。每个定时/计数器能够经过编程方式来设定工作方式有 6 种。20.若用4K1存放器芯片组成12K字节内存容量,则共需 24 个这么芯片。21.普通情况下,容量为256KB存放器含有 8 条数据线,18 条地址线。第7页8微机原理及应用重修22.在微型计算机系统中,可采取输入输出方式主要有 程序控制、中止方式 、DMA 三种类型。23.可编程接口芯片8255A含有 3 个 8 位I/O口。A口
5、工作方式有 3 种,B口工作方式有 2 种。24.8086 CPU上电复位后,执行第一条指令物理地址是 FFFF0 H。第8页9微机原理及应用重修25.8086/8088 CPU 中止系统能处理 256 种不一样类型中止。26.在8086系统中使用8259A芯片,最多能管理 64 级中止优先级。27.计算机对I/O端口编址方法有 存放器映象寻址(也称统一编址)、I/O单独编址 两种。28.内存按存放器性质分类通常分为RAM和 ROM 两类。第9页10微机原理及应用重修二、分析简答题1、写出-23原码、反码、补码,并将补码转换成十六进制数(设字长为8位)。答:X=-23=-10111BX原码:1
6、0010111BX反码:11101000BX补码:11101001B=E9H第10页11微机原理及应用重修2、已知逻辑地址3010H:1234H,写出段地址、偏移地址、物理地址。答:段地址为:3010H;偏移地址为:1234H 物理地址:3010H*10H+1234H=31334H3、简述BIU、EU单元作用。答:BIU:地址形成、取指令、指令排队、读/写操作数、总线控制 EU:指令译码、指令执行第11页12微机原理及应用重修4、8086 CPU中四个段存放器名称是什么,分别用什么符号表示?答:代码段:CS 数据段:DS 堆栈段:SS 扩展段:ES第12页13微机原理及应用重修5、列举最少5种
7、程序状态字中标志位,并简明说明其功效答:ZF:全零标志 CF:进位标志 SF:符号位 AF:辅助进位 PF:奇偶校验位 OF:溢出标志第13页14微机原理及应用重修6、设字长为8位,用二进制计算15+20结果,并说明对状态标志C、A、S、Z影响。答:00001111 +00010100 00100011 CF=0 AF=1 SF=0 ZF=0第14页15微机原理及应用重修7、8086CPU对1M存放空间是怎样组织?答:8086 CPU对存放器是采取分段方式管理(段地址:偏移量),分为奇地址库和偶地址库。8、8086CPU系统中存放器为何分奇地址库和偶地址库。答:为确保和以前CPU兼容,确保80
8、86既能进行字节操作,有能够进行字操作。第15页16微机原理及应用重修9、8086对存放器管理为何采取分段方法?20位物理地址是怎样形成?答:8086数据线和内部存放器都是16位,而其地址线是20位,无法直接进行管理;为扩大寻址范围,采取分段管理方式,把真正物理地址用段地址和偏移量表示,每一部分都不超出64K,可保留在内部存放器中。当CPU访问内存时,在地址加法器中将段存放器内容(段基址)自动左移4位(二进制),再16位偏移地址相加,形成20位物理地址。第16页17微机原理及应用重修10、设SS=1050H,SP=0008H,AX=1234H,当执行指令:PUSH AX后,存放器SS、SP、A
9、X内容分别是什么?画图说明1234H在内存中存放情况。答:SS=1050H SP=0006H AX=1234H (10506H)=34H (10507H)=12H第17页18微机原理及应用重修11、分别指出以下指令中源操作数寻址方式。(1)MOV CX,300H(2)MOV BPDI,300H (3)MOV AX,BX(4)MOV AX,BP+DI(5)MOV AX,10BXDI(6)MOV AX,10SI(7)MOV AX,DI(8)JMP BX(9)IN AL,23H(10)IN AL,DX(1)直接寻址(2)马上寻址(3)存放器寻址(4)基址加变址(5)相对基址加变址寻址(6)存放器相对
10、寻址(7)存放器间接寻址(8)段内间接寻址(9)直接端口寻址(10)间接端口寻址 第18页19微机原理及应用重修12、指出以下指令错误(1)MOV AH,BX 答:源、目标操作数长度不匹配 (2)ADD 15H,BX 答:马上数不能做目标操作数(3)MOV CS,AX答:CS不能做目标操作数(4)MOV AX,SIDI 答:SI、DI不能同时出现在 中(或源操作数寻址方式有误)(5)MOV BYTE PTRBX,1000答:源、目标操作数长度不匹配 第19页20微机原理及应用重修(6)MOV SI,BX答:源、目标操作数不能均为存放器操作数(7)MOV DS,0200H答:马上数不能直接送至段
11、存放器(8)IN BL,05H答:IN指令中目标操作数不能用BL(只能用AL或AX)(9)MOV AX,IP答:IP不能作操作数(10)MOV SI,DX答:DX不能间接寻址,可改为 MOV SI,BX(11)PUSH AL 答:PUSH指令操作数必须为16位(即:按字操作)第20页21微机原理及应用重修13、试写一指令序列,完成将AX存放器最低4位置1,最高3位清零,D7D9位反相,其它位不变。答:OR AX,000FH AND AX,1FFFH XOR AX,0380H第21页22微机原理及应用重修14、用单条指令或程序片段,实现下述功效。(1)将AX高8位取反,低四位置1,其余位不变。(
12、2)将AL高四位与低四位交换。(3)将BX、AX内容交换。答:(1)XOR AX,0FF00H OR AX,000FH(2)MOV CL,4 ROR AL,CL(或ROL AL,CL)(3)XCHG AX,BX 第22页23微机原理及应用重修15、写出最少3种指令,使AX存放器清零 答:MOV AX,00 SUB AX,AX XOR AX,AX AND AX,00H第23页24微机原理及应用重修16、设计I/O接口电路时普通遵照什么标准,为何?答:遵照基本标准:输出要锁存,输入要缓冲。原因:CPU运行速度较快,外设速度相对较慢,经过锁存器保持CPU输出信号;CPU数据线是公用,任何外设都不能单
13、独占用数据线,经过缓冲器能够将外设和数据线在不需要时候隔离。第24页25微机原理及应用重修17、计算机使用中止有什么好处?答:(1)处理快速CPU与慢速外设之间矛盾,使CPU能够与外设同时工作,甚至能够与几个外设同时工作。(2)计算机实现对控制对象实时处理。(3)计算机能够对故障自行处理。18、8086可屏蔽中止请求输入信号线是什么?“可屏蔽”涵义是什么?答:可屏蔽中止请求输入线为INTR;“可屏蔽”是指该中止请求可经软件去除标志存放器中IF位而被禁止。第25页26微机原理及应用重修19、简述CPU响应外部可屏蔽中止前提条件是什么?答:有中止源申请、无内部中止、中止系统是开放20、什么是中止向
14、量,中止向量表在内存中地址范围是什么?答:中止向量是指中止处理程序入口地址;中止向量表地址范围:00000H003FFH第26页27微机原理及应用重修21、什么叫中止向量表,在8086系统中,中止向量表存放在内存什么位置,容量有多大?答:把不一样中止类型号对应中止服务程序入口地址排列起来,形成表称为中止向量表;存放在存放器最开始一段空间内;容量为1KB。第27页28微机原理及应用重修22、8086CPU主要能处理哪些类型中止,这些中止优先级是怎样排列。答:内部中止和外部中止,内部中止包含内部硬中止和内部软中止,外部中止包含可屏蔽和不可屏蔽中止。中止优先级为:内部中止不可屏蔽中止可屏蔽中止单步中
15、止第28页29微机原理及应用重修23、编写中止类型号为10中止向量设置程序(假设中止服务程序名为INT_10)方法一:MOV AX,0 MOV ES,AXMOV DI,40MOV AX,OFFSET INT_10CLD STOSWMOV AX,SEG INT_10STOSW方法二:MOV AX,0 MOV DS,AXMOV BX,40MOV AX,OFFSET INT_10MOV BX,AXMOV AX,SEG INT_10MOV BX+2,AX第29页30微机原理及应用重修三、程序分析题1、MOV AL,85H MOV X1,0 MOV X2,0 MOV CX,8L0:SHL AL,1 JC
16、 L1 INC X1 JMP L2L1:INC X2L2:LOOP L0程序中X1和X2是字节变量,(1)分析程序实现功效。(2)程序执行后,X1和X2值分别是多少?答:(1)统计AL中0和1个数,分别放在X1和X2中。(2)X1=5;X2=3第30页31微机原理及应用重修2、IN AL,5FH ;TEST AL,80H;JZ L1 ;MOV AH,0 JMP STOPL1:MOV AH,0FHSTOP:HALT从地址为5F端口读入1个字节送ALAL与80H相与,但不回送结果,只影响标志位值若状态标志Z为1,跳转至L1运行(1)在横线处写明语句实现功效。(2)分析程序实现功效。功效:若从地址为
17、5F端口外围设备读入字节最高位为0则AH=0FH,不然AH=0第31页32微机原理及应用重修3、MOV AX,0 MOV BX,1 MOV CX,100L1:ADD AX,BXINC BXDEC CXJNZ L1(1)分析程序实现功效。(2)程序执行后,AX、BX、CX值分别是多少?答:(1)计算1+2+3+100值,最终保留在AX中;(2)AX=5050 BX=101 CX=0 第32页33微机原理及应用重修4、STR DB COMPUTER MOV CX,8 MOV AL,1 LEA BX,STR ;(a)L1:CMP BYTE PTR BX,U;(b)JZ L2 INC BX INC A
18、L LOOP L1L2:HALT第33页34微机原理及应用重修(1)在横线处写明语句实现功效。答:(a)将STR变量首地址送BX (b)比较BX间接寻址字节是否等于U(2)分析程序实现功效,并说明执行完后,AL存放器值。答:计算字母U在字符串中出现位置,AL=5 第34页35微机原理及应用重修5、分析填空MOV AX,00H ;PUSH AX;POP BX;MOV AX,3F5FH ;MOV CX,4ROR AL,CL;AND AL,0FH;答:执行后 AX=00H 执行后 AX=00H 执行后 BX=00H 执行后 AL=5FH 执行后 AL=0F5H 执行后 AL=05H 第35页36微机
19、原理及应用重修6、若STR是字符串首地址,指出以下程序功效,并将语句加上注解。LEA BX,STR ;取STR 偏移量放到BX中 MOV CX,20 ;_设置循环次数_LP:CMP BX,*JNZ NEXT ;BX所指单元内容不为*,则转移至NEXTMOV BX,$;将BX所指单元用$替换NEXT:INC BX ;BX加1,指向下一个单元LOOP LP ;CX-1不等于0则转移至LP处,继续循环HLT 程序功效:将STR开始前20个字符中*用$替换第36页37微机原理及应用重修四、编程题1、从BLOCK开始有一个字节型数组,共有15个元素,编写完整汇编源程序,计算这个数组中奇数个数,并将结果存
20、入内存SUM单元。2、从BUF开始有一个字节型数组,共有100个元素,编写完整汇编源程序,计算这个数组中负数个数,并将结果存入内存COUNT单元。3、从BUF开始,存放10个带符号字节数据,编写完整汇编源程序,找出该数据区中最大数,并将其存放至内存单元MAX中。(答案略)第37页38微机原理及应用重修第38页39微机原理及应用重修1.右图为8088 CPU和某存放器电路连接图,请回答以下问题:(1)将CPU信号线与存放器相连。(2)存放器是什么类型(RAM、ROM)?总容量为多少?各存放芯片地址范围分别是多少?五、存放器扩展题第39页40微机原理及应用重修答:1)CPU与存放器连接如右图所表示
21、。2)存放器类型为:RAM ;总容量为 4K8 ;地址范围:0#H-27FFH 1#2800H-2FFFH 第40页41微机原理及应用重修1、INTEL 8255A接口芯片(1)现给出INTEL 8255A 应用电路以下,系统分配给8255地址为60H63H。试分析该电路中8255A、B口分别是作为输入口,还是输出口?(2)现给出8255A 工作方式控制字格式以下,请编写程序片段对8255进行初始化,并读取电路中开关量,用LED发光二极管显示其对应开关状态(注:LED显示器“亮”,表示开关“断开”)。六、输入输出接口题第41页42微机原理及应用重修第42页43微机原理及应用重修解答:(1)A口
22、作为输入口,B口作为输出口 (2)初始化:A口作为输入口,B口作为输出口,均工作于方式0,则控制字为:90H(不唯一)参考程序片段:MOV AL,90H OUT 63H,AL IN AL,60H OUT 61H,AL 第43页44微机原理及应用重修2、依据下面接口电路图,回答以下问题:第44页45微机原理及应用重修(1)这是一个什么接口电路图?答答:查询式输入接口电路图(2)写出以下芯片名称或功效(锁存、缓冲):U1:锁存器U2:三态缓冲器(或三态门)(3)电路图中1、2、3、4、应接到何处?写出符号。答答:1.2.M/3.地址线A15A0 4.The end!第45页46微机原理及应用重修温
23、馨提醒:考试时请带学生证和重修证!谢 谢!第46页指令系统程序设计举例 例1:从存放器中取数基本方法执行以下指令后,AX存放器中内容是什么?TABLEDW10,20,30,40,50 ENTRY DW3 .MOV BX,OFFSET TABLE;取数据串偏移地址ADD BX,ENTRY ;BX=BX+3MOV AX,BX ;物理地址=DS16+(BX)答案:(AX)=400AH14H1EH28H32H03HDS:TABLEDS:ENTRY此例中要注意:1)TABLE 和ENTRY标号意义,这里为数据串偏移地址首地址。2)从存放器中取数据必须要知道数据在那个段和它偏移地址。3)得到偏移地址有两条
24、指令4)假如数据在ES或SS段时,指令中段前缀使用方法第47页 假如数据串定义在ES段中 TABLEDW10,20,30,40,50 ENTRY DW3 .MOV BX,OFFSET TABLE;取数据串偏移地址ADD BX,ES ENTRY ;BX=BX+3MOV AX,BX ;物理地址=ES16+(BX)答案:(AX)=400AH14H1EH28H32H03HES:TABLEES:ENTRY此例中要注意:1)TABLE 和ENTRY标号在程序中只能出现一次,在段定义中已经指明在ES段中。第48页例2:在使用中轻易犯错指令使用方法指出以下指令错误:(1)MOV AH,BX ;源、目标字长不一
25、致(2)MOV SI,BX ;源、目标不能同时为存贮器寻址方式(3)MOV AX,SIDI;基址变址方式不能有 SI和DI组合(4)MOV AX,BXBP;基址变址方式不能有 BX和BP组合(5)MOVBX,ES:AX ;AX不能作为基址存放器使用,而且源、目标不能同时为存贮器寻址方式(6)MOV BYTE PTRBX,1000;1000超出一个字节表数范围(7)MOV AX,OFFSET SI ;OFFSET只用于标号(8)MOV CS,AX;CS不能作为目标存放器(9)MOV DS,BP ;段地址不能直接送入数据段存放器第49页例3:推断指令执行结果 DATA SEGMENTTABA DW
26、1234HDATA ENDS .MOV BX,TABALEABX,TABA请写出上述两条指令执行后,BX存放器中内容。答案:MOVBX,TABA;执行后(BX)=1234H ,内存中数据LEABX,TABA;执行后(BX)=OFFSET TABA,偏移地址34H12HXXXXXXXXDS:TABA第50页例4 多字节加法程序设计变量DATAX和DATAY定义以下:DATAX DW 0148H DW 2316H DATAY DW 0237H DW 4052H按下述要求写出指令序列:DATAX和DATAY中两个字数据相加,和存放在DATAY和DATAY+2中。实现运算为:2316 0148H+40
27、52 0237H=?MOV AX,DATAX ;取第一个要加数低字ADDAX,DATAY ;与第二个数低字相加,结果在AX中MOV BX,DATAX+2 ;取第一个数要加数高字ADCBX,DATAY+2;与第二个数高字相加,结果在BX中MOV DATAY,AXMOV DATAY+2,BX ;保留和,注意地址为2个字节在编程时要考虑到低字相加后产生进位第51页例5:乘法指令应用(无符号)两个16变量DATAY和DATAX定义以下:DATAY DW 0148H ;A DW 2316H ;B DATAX DW 0237H ;C DW 4052H ;D RESULT DW 12DUP(0)按下述要求写
28、出指令序列:DATAY和DATAX两个字相乘(用MUL)。第52页 A B C D E F G H H G F E D C B A N N N N N N N N N M M M M M M M M M A A A A A A A A A B B B B B B B B B C C C C C C C C C D D D D D D D D D E E E E E E E E E F F F F F F F F FX X X X X X X X X X X X X X X X X第53页 A B C D E F G H H G F E D C B A N N N N N M M M M M A
29、 A A A A B B B B B DX(0)AX(0)A B C D E F G H H G F E D C B A C C C C C D D D D D E E E E E F F F F F DX(1)AX(1)第54页 A B C D E F G H H G F E D C B A N N N N N M M M M M A A A A A B B B B B DX(2)AX(2)A B C D E F G H H G F E D C B A C C C C C D D D D D E E E E E F F F F F DX(3)AX(3)第55页 DX(0)AX(0)DX(1)
30、AX(1)DX(2)+AX(2)DX(3)AX(3)C1 字1 字0+C2 +C1 字3 C2 字2字相乘后位相加要求第56页MOVAX,WORD PTR DATAX;取乘数第一个字MOVBX,WORD PTR DATAY;取被乘数第一个字MULBX;(AC)MOVRESULT,AX;结果低字 AX(0)MOVRESULT+2,DX ;结果高字 DX(0)MOVAX,WORD PTR DATAX;取乘数第一个字MOVAX,WORD PTR DATAY+2;取被乘数第二个字MULBX;(AD)MOVRESULT+4,AX;结果低字 AX(1)MOVRESULT+6,DX ;结果高字 DX(1)第
31、57页MOVAX,WORD PTR DATAX+2;取乘数第二个字MOVBX,WORD PTR DATAY ;取被乘数第一个字MULBX;(BC)MOVRESULT+8,AX;结果低字 AX(2)MOVRESULT+10,DX ;结果高字 DX(2)MOVAX,WORD PTR DATAX+2;取乘数第二个字MOVBX,WORD PTR DATAY+2;取被乘数第一个字MULBX;(BD)MOVRESULT+12,AX;结果低字 AX(3)MOVRESULT+14,DX ;结果高字 DX(3)第58页MOV AX,RESULT+2MOV BX,RESULT+4MOV DX,RESULT+8AD
32、DAX,BXADCAX,DX;DX(0)+AX(1)+AX(2)MOV RESULT+2,AXMOV AX,RESULT+6MOV BX,RESULT+10MOV DX,RESULT+12ADCAX,BXADCAX,DX;DX(1)+DX(2)+AX(3)MOV RESULT+4,AX MOVAX,RESULT14ADCAX,0000H ;DX(3)+CMOVRESULT6,AX第59页例6:移位指令应用试分析下面程序段完成什么操作?MOVCL,04SHLDX,CL;DX左移4位。左移次数CL中数MOVBL,AH SHLAX,CL;AX左移4位SHRBL,CL ;BL右移4位 答案:将DX、A
33、X中字左移4位,BL右移4位第60页例7:变量N1和N2均为2字节非压缩BCD数码,请写出计算N1与N2之差指令序列。非压缩BCD码格式:0000XXXXHMOV AX,0 ;(MOV AH,00H)AX高8位清0 MOV AL,N1 ;取个位数SUBAL,N2 ;个位减AAS ;非压缩BCD数减法结果进行调整MOV DL,AL ;将正确结果保留在DL中MOV AL,N1+1 ;取十位数SBCAL,N2+2 ;十位减,考虑个位有借位AAS ;非压缩BCD数减法结果进行调整MOV DH,AL ;将正确结果保留在DH中第61页 例8:假设(CS)=3000H,(DS)=4000H,(ES)=H,(
34、SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,(SP)=0FFFEH,(CF)=1,(DF)=1,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(1)SBBAX,BX;2060H-3000H(AX)=F05FH,(SF)=1,(ZF)=0,(OF)=0,(CF)=1第62页 假设(CS)=3000H,(DS)=4000H,
35、(ES)=H,(SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(2)CMPAX,WORD PTRSI+0FA0H;2060H-A006H目标操作数地址:DS16+SI+0FA0H =40000H+2060+0FA0=4300
36、0H执行此指令后AX中内容不变!只影响标志位!第63页2060H-A006H 0010 0000 0110 0000 -1010 0000 0000 0110 0010 0000 0110 0000 +0101 1111 1111 1010 1000 0000 0101 1010结果:(SF)=1,(ZF)=0,(OF)=1,(CF)=1OF=1 两数符号相反(正数-负数、或负数-正数),而结果符号与减数相同。OF=0 同符号数相减时或不一样符号数相减,而结果符号与减数不相同。第64页 假设(CS)=3000H,(DS)=4000H,(ES)=H,(SS)=5000H,(AX)=2060H,(
37、BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(3)MULBYTE PTRBX ;字或字节由源决定(AX)=0260H,(OF)=1,(CF)=1第65页MULBYTE PTRBX目标操作数地址:DS16+(BX)=40000H+3000=43000H (43000H
38、)=A006H此操作为:60H06H=0240H (AX)=0240H,(OF)=1,(CF)=1乘法指令运算结果影响状态标志,但对CF、OF有特殊定义。当乘积高半部分为0(AH=0或DX(高位)=0)时,CF=0、OF=0,表示高半部分无有效数,不然CF=1、OF=1,用于指出字节运算结果是8位或16位,字运算结果是16位或32位。(不存在有进位可能)第66页 假设(CS)=3000H,(DS)=4000H,(ES)=H,(SS)=5000H,(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(
39、23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(4)DIVBH;AX/BL(2060H30H)(AX)=2060H第67页(4)DIVBH;AX/BL(2060H30H)(AX)=2060H AL=商,AH=余数2060H=40962+96=8288 828848=172 余数=32除法不影响标志位第68页 假设(CS)=3000H,(DS)=4000H,(ES)=H,(SS)=5000H,
40、(AX)=2060H,(BX)=3000H,(CX)=5,(DX)=0,(SI)=2060H,(DI)=3000H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(25060)=00B0H,.(SP)=0FFFEH,(CF)=1,(DF)=1,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(5)SARAX,CL ;算术右移5次(AX)=0103H,(CF)=0 2060H=0010 0000 0110 0000B 0000 0001 0000 0011 B 00000B第69页 假设
41、(AX)=2060H,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(6)XORAX,0FFE7H 0010 0000 0110 0000B 1111 1111 1110 0111B 1101 1111 1000 0111B(AX)=0DF87H,(CF)=0,(OF)=0,(SF)=1,(ZF)=0相当于对AX内容求反第70页 假设(DS)=4000H,(ES)=H,(AX)=2060H,(BX)=3000H,(SI)=2060H,(43000H)=0A006H,(23000H)=0B116H,(33000H)=0F802H,(2
42、5060)=00B0H,.(SP)=0FFFEH,请写出以下各条指令单独执行完后,相关存放器及存放单元内容,若影响条件码请给出条件码SF、ZF、OF、CF值。(7)XCHG AX,ES:BX+SI目标操作数地址:ES16+(BX+SI)=0H+3000+2060=25060H (25060H)=00B0H(AX)=00B0H,(25060)=2060H,不影响标志位第71页假设(DS)=H,(ES)=3000H,(SS)=4000H,(SP)=100H,(BX)=200H,(SI)=1,(DI)=2,(BP)=256,字变量ARRAY偏移地址为0050H,20250H)=1234H,(4010
43、0H)=00A0H,(40102H)=2200H。填空回答以下问题。(1)MOVAX,BPDI;源操作数物理地址=H指令执行后(AX)=H(2)POPAX;源操作数物理地址=H指令执行后(AX)=H(3)PUSHES:BX;源操作数有效地址=H(4)LEADI,ARRAY;源字段寻址方式是 指令执行后(DI)=H(5)JMP BX;指令执行后(IP)=H(6)ADD AL,BYTE PTR ARRAYBX;源字段寻址方式是?指令执行后(AL)=H第72页(1)源操作数物理地址=40102 H指令执行后(AX)=2200 H(2)源操作数物理地址=40100 H指令执行后(AX)=00A0 H(3)源操作数有效地址=200H H(4)源字段寻址方式是 直接寻址方式 指令执行后(DI)=0050 H(5)指令执行后(IP)=200 H(6)源字段寻址方式是 存放器相对寻址方式 指令执行后(AL)=34 H第73页