




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章:微型计算机基础知识 (一)选择题(1)CPU中运算器的功能主要是( )。A、算数运算 B、逻辑运算 C、函数运算 D、算数运算和逻辑运算(二)简答题(1)什么叫微处理器、微机、微机系统?它们之间是什么关系?(2)微处理器由哪些基本部件组成?各个部件的基本功能是什么?(3)CPU在内部结构上由哪几部分组成?(4)冯.诺依曼结构指的是什么? 第二章:微处理器结构和总线操作时序(一)选择题(1)要使8086CPU工作在最小方式,其引脚MN/MX(非)应接( )电平。 A、 TTL B、 CMOS C、 逻辑低 D、逻辑高 (2)从8086CPU的功能结构上看,其是由( )两部分组成。 A、 控制器和20位物理地址加法器 B、 运算器和总线接口 C、 执行单元和总线接口单元 D、控制器和运算器 (3)段地址最多可以为( )字节。A.128K B.64K C.32K D.16K(4)8086/8088的四个通用寄存器分别是( )A、 AX、BX、CX、DX B、 AX、BX、SI、DX C、 AX、BX、SI、DI D、 AX、BX、CX、BP(二)简答题(1)8086有几个段寄存器?各自的作用是什么? 答案:有代码段CS,存放代码段的段地址;数据段DS,存放数据段的段地址 ;附加段 ES,存放附加段的段地址;堆栈段SS,存放堆栈段的段地址。(2)在8086中,物理地址是怎么组成的?其计算公式? 答案:将段寄存器提供的16位段地址左移4位,变为20位地址,然后与各种寻址方式提供的16位有效偏移地址相加,最终得到20位的物理地址。 物理地址=段地址*16+偏移地址在访问内存时,用户编程使用的是16位的逻辑地址, 而BIU使用的是20位的物理地(3)8086是如何将地址数据复用线分离出来的,画出时序波形图,并给予解释。答案: T1T3T2T4CLKA19/S6A1/S3BHE/S7AD15AD0ALE一个总线周期状态输出数据输出地址输出BHE输出地址由地址锁存ALE信号的电平来区分地址和数据信号的时间,在ALE为高时,复用线上出现的是地址信号,为低是出现数据信号。(4)8086可分为几个八位的寄存器?它们是那些寄存器? (5)如果用8086组成最小模式,MN/MX应接什么电平? (6)8086的M/IO线的功能是什么? (7)画出8086读周期的时序波形图第三章:8086指令系统(一)简答题(1)指令MOV AX, MASKBXSI中源操作数的寻址方式为( )。A、寄存器寻址 B、变址寻址 C、基址变址寻址 D、相对基址变址寻址(2)堆栈的工作方式是( )。A、先进先出 B、随机读写 C、只能读出不能写入 D、后进先出(3)LOOP指令执行时,隐含的寄存器为( )A、AX B、BX C、CX D、DX(4)每当CPU执行指令时,决定指令的物理地址的寄存器是( )A、SS,SP B、DS,DX C、CS,IP D、SI,DI(5)在8088CPU中,用于堆栈操作指令的寄存器是( )A、AX B、BX C、SP D、SI(6)指令MOV AX, MASKBXSI中源操作数的寻址方式为( )。A、寄存器寻址 B、变址寻址 C、基址变址寻址 D、相对基址变址寻址(7)8088在访问数据段及堆栈段的偏移量分别由()提供。A、DS、CS B、ES、DS C、DS、ES D、SS、SP(8)假设AL=FFH,执行INC AL指令后不受影响的标志位是( )。A、ZF B、CF C、OF D、AF(9)执行P0P指令后,SP的内容是( )A、(SP)(SP+1) B、(SP)(SP-1) C、(SP)(SP+2) D、(SP)(SP-2)(二)填空题1、假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,下列各条指令为单独执行指令,前后无关系,请回到括号中的问题。(1) SBB AX,BX 完成的是( 带借位减法 )操作,AX=( )(2) CMP AX,WORD PTRSI+0FA0H 完成的是( 两个数的比较 )操作,AX=( )(3) MULBYTE PTRBX 完成的是( 两个数的乘法 )操作,AX=( )(4) DIVBH 完成的是(两个数的除法 )操作,AX=( )(5) SARAX,CL 完成的是( )操作,AX=( )2、假设(DS)=2000H,(ES)=3000H,(SS)=4000H,(SP)=100H,(BX)=200H,(SI)=0001,(DI)=0002,(BP)=256,字变量ARRAY偏移地址为0050H,(20250H)=1234H,(40100H)=00A0H,(40102H)=2200H。执行下列程序段并分析指令执行后的结果,(注意:不是单条指令),按给出的要求填空回答问题: (1)MOV AX,BPSI源操作数物理地址= H , 指令执行后(AX)= H(2)POP AX 源操作数物理地址= H , 指令执行后(AX)= H(3)MOV AL,BX 源操作数有效地址= H, 指令执行后(AX)= H(4)LEA DI,ARRAY源操作数的寻址方式是 , 指令执行后(DI)= H(5)JMP BX 指令执行后(IP)= H(6)INC BX 源操作数的寻址方式是 3、8086被复位后,以下各寄存器的内容是:Flag: ;IP: ;CS: ,DS: ,系统从物理地址为 存储器地址处取指令执行。答案:Flag: 0000H ;IP: 0000H;CS: FFFFH,DS: 0000H ,系统从物理地址为 FFFF0H存储器地址处取指令执行。4、已知(DS)=2000H, (AX)=1000H, (BX)=1000H, (CX)=0002H, (DX)=0020H, (SI)=1000H, (21010H)=1000H, (23000H)=0B116H,(33000H)=0F802H, (25060)=00B00H, CF=1 ,请按要求回答下列各条指令单独执行完后的问题。(1) ADC AX,DX ;指令功能为( ), AX=( ),(2) SBB AX, 10H SI ;指令功能为( ), AX=( ),(3) MUL DL ;指令功能为( ), AX=( )(4) SHR DL,CL ;指令功能为( ), DX=( )(5) XOR,AX, AX ;指令寻址方式为( ), AX=( )*5、假设(DS)=2000H,(ES)=3000H,(CX)=0000H,(SS)=1000H,(SP)=0100H,(BX)=0200H, (SI)=0001H,(DI)=0010H,(BP)=0100H,DISP=02H,(30202H)=8090H,(10100H)=00A0H,(20200H)=12H,(20201H)=34H,(20202H)=78H,(20203H)=56H执行下列程序段并分析指令执行后的结果,(注意:不是单条指令),按给出的要求填空回答问题: (1)MOV AX,BXSI ;源操作的寻址方式是 基址变址寻址 ,指令执行后(BX)= 7834H(2)POP AX ;源操作的寻址方式是 寄存器寻址 ,指令执行后(AX)= 00A0H(3)MOV AL,ES:DISPBX ;源操作的寻址方式是寄存器相对寻址 ,指令执行后(AL)= 90H(4)MOV CX,(0202H) ;源操作数的寻址方式是 直接寻址 ,指令执行后(CX)= 5678H(5) MOV AX,2000H ;源操作数的寻址方式是 立即寻址 ,指令执行后(AL)= 00 H6、执行下面的程序段后,AX的内容是( ),BX的内容是( ). MOV AX,1234H MOV BX,5678H PUSH AX PUSH BX POP AX POP BX7、连续执行下列指令,并在空格中填写指令执行的结果。(1) MOV AX , 2060H AL= ;AH= ;CF= (2) MOV DS , AX DS= ;AH= ;CF= (3) MOV AL , AH AL= ;AH= ;CF= (4) INC AX AL= ;AH= ;CF= (5) MOV DX , 512 DL= ;DH= ;CF= 8、假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H,(SP)=1000H, (AX)=2060H, (BX)=1000H, (CX)=0005H, (DX)=0000H, (SI)=2060H, (DI)=3000H, (43000H)=2000H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H, (41000H)=0202H,CF=1。下列各条指令为单独执行指令,前后无关系,请回到括号中的问题。(1) ADC AX,BX 完成的是( 带进位加法 )操作,AX=( 3061H ),CF= 0 (2) CMP AL,70H 完成的是(比较 )操作,AL=( 60H ),CF= 1 (3) MUL BYTE PTRBX 完成的是(乘法 )操作,AX=(00C0H ),CF= 0 (4) PUSH AX 完成的是( 压入堆栈 )操作,SP=(0FFEH ),AX= 2060H (5) SAR AL,CL 完成的是(算术右移 )操作,AL=(03H ),CL= 0 9、假设(DS)=2000H,(ES)=3000H,(SS)=4000H,(SP)=1000H,(BX)=0200H,(SI)=0001H,(DI)=0002H,(BP)=256,字变量ARRAY偏移地址为0050H,(20200H)=1234H,(40100H)=00A0H,(40102H)=2200H。执行下列程序段并分析指令执行后的结果,(注意:不是单条指令),按给出的要求填空回答问题:(每空1分,共10分 )(1)MOV AX,BPSI;源操作数物理地址= 40101 H, 指令执行后(AX)= 0200H(2)POP AX ;寻址方式是= 寄存器寻址 , 指令执行后(SP)= 1002H(3)MOV AL,BX ;源操作数有效地址= 20200 H, 指令执行后(AX)= 1234H(4)LEA DI,ARRAY ;源操作数的寻址方式是 直接寻址, 指令执行后(DI)= 0050H(5)JMP BX ;指令执行后(IP)= 0200H(6)INC BX ; 源操作数的寻址方式是 寄存器寻址 10、连续执行下列程序段,并在空格中填写指令执行的结果。(1) MOV AX , 30A0H AL= A0H ; AH= 30H ;(2) MOV DS , AX DS= 30A0H ; AX= 30A0H ;(3) MOV AL , FFH AL= FFH ; AH= 30H ;(4) INC AX AL= 00H ; AH= 31H ;(5) MOV AL , 10010011B AL= 93H ; SF= 1 ;11、若给定(AX)=A050H,(BX)=6O50H ,(AX)=6O50H,(BX)= A050H分析下列程序段(按无符号数计算),确定程序的转向:ADD AL,BLJZ L1JC L2CMP AH,BHJC L3JZ L4JMP L5程序转移地址标号为: L5 L3 12、若给定(AX)=A050H,(BX)=6O50H ,分析下列程序段(按无符号数计算),确定程序的转向:ADD AL,BLJZ L1JC L2CMP AH,BHJC L3JZ L4JMP L5L1: L2: . .L3: .L4: L5: 程序转移地址标号为: 13、设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H,SP=1350H,SI=1354H,(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=OE7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H下列各指令都在此环境下执行,在下列各小题的空格中填入相应各指令的执行结果。(1)MOV AX,1352H AX=解:AX=1352H(2)MOV AX,1352H ;AX=解:PA=DS*16+EA=10000H+1352H=11352H(11352H)=0FFH,(11353H)=26HAX=26FFH(3)MOV 0150HBX,CH(11350H)= (11351H)=解: EA=BX+0150H=1350HPA=DS*16+EA=10000H+1350H=11350H, CH=33H(11350H)=33H, (11351H)的值不变 ,(11351H)=3CH(4)MOV AX,0150HBP AX=_解:EA= BP0150H1350HPA=SS*16+EA=20000H+1350H=21350HAX=5188H(5)POP AX ; AX=_,SP=_解:EA= SP=1350HPA=SS*16+EA=20000H+1350H=21350HAX=5188H, SP=1350H+2H=1352H(6)ADDSI,CX(11354H)=_,(11355H)=_,SF=_ZF=_, PF=_, CF=_, OF=_解:EA=SI=1354H, PA=DS*16+EA=10000H+1354H=11354HCX=339AH, (11354H)=52H,(11355H)=OE7H0E752H+339AH=11AECH-(11355H): (11354H)(11354H) =0ECH, (11355H)= 1AH(11354H) =0ECH, (11355H)= 1AHCF=1,ZF=0,PF(低八位奇偶校验):0ECH= 11101100BPF=0SF(最高位状态),1H=0001BSF=0OF(溢出标志)0E752H1110011101010010B339AH=11001110011010B 1110011101010010+ 11001110011010 10001101011101100(7)SUB BH,0150HBXSIBH=_,SF=_,ZF=_,PF=_,CF=_,0F=_解:EA=0150H+BX+SI=26A4H;PA=DS*16+EA=10000H+26A4H=126A4H;(126A4H)=9DH,BH=12HBH=75H, SF=0,ZF=0,PF=0, CF=1 ,OF=0(8)INC BYTE PTR 0152HBX(11352H)=_,(11353H)=_,CF=_解:EA=0152H+ BX= 1352H,PA=DS*16+EA=11352, (11352H)=0FFH, (11352H)=00H, (11353H)= 26H, 不影响CF(9)INC WORD PTR 0152HBX(11352H)=_,(11353H)=_,CF=_解:EA=0152H+ BX= 1352H, PA=DS*16+EA=11532, (11352H)=0FFH, (11353H)= 26H(11352H)=00H, (11353H)= 27H, 不影响CF(10)SAR BYTE PTR 0150HBX,1(11350H) =_, CF=_, OF=_解:EA=BX+0150H=1350HPADS*16+EA=11350H, (11350H)=0A5H= 10100101B11010010B=0D2H, CF=1,OF=0(当移位数为1是,最高位不变则OF=0)(11)SAL BYTE PTR 0150HBX,1(11350H)=_,CF=_,OF=_解:EA=BX+0150H=1350H,PA=DS*16+EA=11350,(11350H)=0A5H= 10100101B 01001010B=4AH, CF=1,OF=114、阅读下列各小题的指令序列,在后面空格中填入 该指令序列的执行结果。(1) MOV BL,85H MOV AL,17H ADD AL,BL DAAAL=_, BL=_, CF=_解:17H+85H9CHALDAA 压缩的BCD码加法十进制调整指令。(AL的低4位9或AF=1,ALAL+06H,AF1;AF是辅助进位标志用以标志D3向D4的进位AL的高4位9或CF=1,ALAL+60H,CF1;)AL=9CH+ 06H=0A2HAL=0A2H+60H=02H, BL=85H CF=1(2) MOV AX,BX;NOT AX; ADD AX,BX; lNC AXAX=_,CF=_解:lNC不影响标志位 AX=0000H, CF=0(3)MOV AX,0FF60H ; STC ; MOV DX,96 XOR DH,0FFH ; SBB AX DXAX=_,CF=_解:XOR 命令 会使 CF0,OF096=60H,AX=0000H, CF=0(4)MOV BX,0FFFEH ; MOV CL,2;SAR BX,CLBX=_,CF=_解:0FFFEH=1111111111111110B1111111111111111B,CF=01111 1111 1111 1111B,CF=1(三)判断题1、正误判断题,如果错误请说明原因(1)、对一个字数据,当从偶地址存取时需占用2个总线周期,而从奇地址存取时需1个总线周期。( ) (2)、数据传送指令:MOV 1000H, BX ( )(3)、堆栈指令:PUSH AH ( )(4)、数据传送指令:MOV AX,BL ( )(5)、数据传送指令:MOV DS, 1000H ( )(6)、DMA方式传送数据时不需要CPU的干预,它是不同于程序传送方式的高速度数据传送 。 ( )(7)、数据传送指令:MOV ES,CS ( )(8)、数据传送指令:MOV CS,AX ( )(9)、乘法指令:MOV AX,BL ( )(10)、8086/8088CPU执行指令RET与IRET产生的操作是一样的 ( )(11)、根据中断源的不同,中断可以分为外部中断、内部中端和软件中断。( ) 答案:中断可以分为外部中断、内部中端。(12)、数据传送指令:MOV 1000H,AL ( )答案:存储器之间不能传送数据,MOV AL, BX;MOV 1000H, AL(13)、出栈指令:POP AL ( )答案:堆栈操作为字操作;POP AX(14)、数据传送指令:MOV AL,BX ( )答案:数据长度比一致;MOV AX,BX或MOV AL,BL(15)、数据传送指令:MOV DS,1000H ( )答案:存储器的内容不能直接传送到段寄存器,只能用16位通用寄存器传送。(16)、除法指令:MOV AX ,BL ( )答案:目的操作数是隐含为AX或DX:AX中(17)、数据传送指令:MOV ES,CS ( )答案:段寄存器之间不能传送数据,只能用16位通用寄存器传送(18)、数据传送指令:MOV ES,AX ( )(19)、加1指令:INC BX ( )2、指出下列指令的错误,(要求说明错误的原因,并给出正确的写法)(1) MOV AH, BX ;错,两个操作数位数不一致,应改为:MOV AH, BH或MOV AX, BX(2) MOV SI, BX ;错,两个操作数位数不能都为存储器,应改为:MOV SI, BX(3) MOV AX, SIDI ;错,源操作操的组合不对,应改为:MOV , BX SI(4) MOV BYTE PTRBX,1000H;错,目的操作数位数应该为字节,应改为:BYTE PTRBX,00H(5) MOV DS,BP; 错,源操作数只能为通用寄存器,应改为:MOV DS, AX3、指出下列指令的错误,(要求说明错误的原因,并给出正确的写法)(1) MOV AH, BX(2) MOV SI, BX(3) MOV AX, SIDI(4) MOV BYTE PTRBX,1000H(5) MOV DS,BP4、指出下列指令的错误:(1) MOVAH,BX(2) MOVSI,BX(3) MOVAX,SIDI(4) MOVAX,BXBP(5) MOVBX,ES:AX(6) MOVBYTE PTRBX,1000(7) MOVAX,OFFSET SI(8) MOVCS,AX(9) MOVDS,BP答案: (1) 源、目的字长不一致 (2) 源、目的不能同时为存贮器寻址方式 (3) 基址变址方式不能有 SI和DI的组合 (4) 基址变址方式不能有 BX和BP的组合 (5) 在8086寻址方式中,AX不能作为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式 (6) 1000超出一个字节的表数范围 (7) OFFSET只用于简单变量,应去掉 (8) CS不能作为目的寄存器(9) 段地址不能直接送入数据段寄存器(四)综合题1、假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (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(2) CMPAX,WORD PTRSI+0FA0H (3) MULBYTE PTRBX(4) AAM(5) DIV BH(6) SAR AX,CL(7) XOR AX,0FFE7H(8) REP STOSB(9) JMP WORD PYRBX(10) XCHG AX,ES:BX+SI 答案:(1) (AX)=0F05FH, (SF)=1, (ZF)=0, (OF)=0, (CF)=1(2) (SF)=1, (ZF)=0, (OF)=1, (CF)=1(3) (AX)=0240H, (OF)=1, (CF)=1(4) (AX)=0906H, (SF)=0, (ZF)=0(5) (AX)=20ACH(6) (AX)=0103H, (CF)=0(7) (AX)=0DF87H, (CF)=0, (OF)=0, (SF)=1, (ZF)=0(8) (23000H)(23004H)=60H, 不影响标志位(9) (IP)=0A006H, 不影响标志位(10) (AX)=00B0H, (25060)=2060H, 不影响标志位2、给定(SP)=0100,(SS)=0300,(FLAGS)=0240,存储单元的内容为(00020)=0040,(00022)=0100,在段地址为0900及偏移地址为00A0的单元中有一条中断指令INT 8,试问执行INT 8指令后,SP,SS,IP,FLAGS的内容是什么?栈顶的三个字是什么?答案:(SP) = 00FA(SS) = 0300(IP) = 0040(FLAGS) = 0040堆栈内容:00A1H0900H0240H3、若给定AX和BX的值如下,(1)(AX)=14C8H,(BX)=808DH (2)(AX)=D022H,(BX)=9F70H(3)(AX)=148DH,(BX)=808DH (4)(AX)=9F22H,(BX)=9F20H已知下列程序段,按无符号数计算,说明程序的转向。ADD AL,BLJZ L1JC L2CMP AH,BHJC L3JZ L4JMP L54、编写程序段实现下列功能(1)将立即数1234H送AX。(2)将寄存器AH的内容送外设端口307H。(3)将BX寄存器的低8位清零,其余位不变。(4)将存储器数据段偏移地址为1000H的字数据的高8位变反,其余位不变。(5)将寄存器AX内容与BX内容相加,结果送CX。(6)将立即数1234H送偏移地址为5678H的存储单元中。 答案:MOV BX,5678H ;MOV BX,1234H(7)将寄存器BX内容送外设端口80H。 答案:MOV AX,BX ;OUT 80H,AL ;MOV AL,AH ; OUT 80H,AL(8)将BX寄存器的高8位清零,其余位不变。 答案:AND BX,00FFH (9)将存储器数据段偏移地址为1000H的字数据的高4位变反,其余位不变。答案:MOV AX,(1000H);XOR AX,F000H(10)将寄存器AX内容与BX内容相减,结果送CX。答案:SUB AX,BX ;MOV CX,AX(11)、请编写完成三个无符号数(20H30H)15H=?的运算的程段,运算结果要求存放在DX、AX寄存器中。答案:MOV AL,20H ;ADD AL 30H ;MOV BL,15H ;MUL BL (12)、已知两个无符号数分别存放AL和BL寄存器中,做ALBL运算,当运算结果为0时,将AL的内容送到偏移地址为(1000H)的内存单元中。当运算结果不为0时,将AL的内容送到偏移地址为(2000H)的内存单元中。请编写完成上述要求的程序段。答案: CMP AL,BL JZ LOOP MOV 2000H,AL LOOP: MOV 2000H,AL (13)、请用循环程序完成将DS=2000H,偏移地址为1000H连续100个单元中的内容清零。(14)、请编写程序完成8位无符号数:12345678H+87654321H的运算,结果存放在DX:CX中。(15)将立即数2233H送地址为(2000H)的存储器中。MOV BX,2000H; MOV BX,2233H(16)将寄存器AH的内容送外设端口0307H。MOV DX,0307HH; MOV AL,AH; MOV DX,AL(17)将BX寄存器的低8位清零,其余位不变。MOV BL,00H 或AND BX,FF00H(184)将存储器数据段偏移地址为2000H的数据变反后仍然保存在原地址中。MOV AL,2000H;NOT AL;MOV 2000H,AL(19)将寄存器AX内容与BX内容和进位位标志的内容相加,结果送CX。ADC AX,BX ;MOV CX,AX(20)请用循环程序完成将DS=2000H,偏移地址为1000H连续100个单元中的内容清零。MOV AX,DS;MOV ES,AX;MOV DI,1000H;MOV,CX,100;REP STOSB DI (21)、请编写程序完成十进制数12+56的运算,结果存放在AH中。MOV AL,12H ; ADD AL,56H ;DAA ;MOV AH,AL 5、已知DS=091DH,SS=1E4AH,AX=1234H,BX=0024H,CX=5678H,BP=0024HSI=0012H,DI=0032H,(09226H)=00F6H,(09228H)=1E40H,(1E4F6H)=091DH。在以上给出的环境下,试问下列指令或指令段执行后的结果如何?(1)MOV CL,BX+20HSI解:EA= BX+20H+SI=56HPA=DS*16+EA=91D0H+56H=9226HCL=(09226H)=F6H(2)MOVBPDI,CX解: EA= BP+DI=56HPA=SS*16+EA=1E4F6H(1E4F6H)= 5678H(3)LEA BX,BX+20HSIMOV AX,BX+2解:BX= BX+20H+ SI=0056HEA= BX+2=58HPA=DS*16+EA=91D0H+58H=9228HAX=(09228H)=1E40H(4) LDS SI,BXDIMOVSI,BX解:EA= BX+DI=56H, PA=DS*16+EA=91D0H+56H =9226HSI=(09226H)=00F6H, DS=(09228H)=1E40HEA= SI=00F6H, PA=DS*16+EA=1E400H+00F6H=1E4F6H(1E4F6H)= BX=0024H(5)XCHG CX,BX+32HXCHGBX+20HSI,AX解:EA= BX+32H=56H, PA=DS*16+EA=91D0H+56H =9226H(09226H)= CX=5678H , CX=(09226H)=00F6HEA= BX+20H+SI=56H,PA=DS*16+EA=91D0H+56H =9226HAX=(09226H)=5678H ,(09226H) = AX=1234H6、设下列各转移指令的第一字节在内存中的地址为CS=2000H和IP=016EH,且环境均为DS=6000H,BX=16C0H,(616C0H)=46H,(616C1H)=01H,(616C2H)=00H,(616C3H)=30H,(61732H)=70H,(61733H)=17H。写出下列各无条件转移指令执行后CS和IP值。个指令左首的16进制编码是该指令的机器码。指令中的目的地址用相应的标号表示。(1)EBE7 JMP SHOURT AGAIN(2)E90016 JMP NEARPTR OTHER(3)E3 JMP BX(4)EA46010010 JMP FAR PROB(5)FF67 JMP WORD PTR 0072HBX (6)FFEB JMP DWORD PTR BX解:(1)E7补码为-19,IP目标=IP源+2+EA(即-19) =016EH+2-19=0157H 因为段内寻址,所以cs=2000H不变(2)IP目标=IP源+3 +EA=016EH+3+1600H=1771H 因为段内寻址 所以cs=2000H不变(3) IP=16C0H, 因为段内寻址 所以cs=2000H不变(4)段间寻址,有机器码可看出IP=0146H CS=3000H(5)段内寻址,所以CS=2000H不变 DS*16+0072H+BX=61732H (61732H)=70H,(61733H)=17H IP=1770H(6)PA=DS*16+BX=60000H+16C0H=616C0H (616C0H)=46H (616C1H)=01H IP=0146H (616C2H)=00H (616C3H)=30H CS=3000H6、阅读分析下列指令序列ADD AX,BXJNO LlJNO L2SUB AX,BXJNC L3JNO L4JMP L5 (1)AX=14C6H,BX=80DCH 解:ADD AX,BXOF=0,CF=0;L1(2)AX=0B568H,BX=5487H解:ADD AX,BXOF=0,CF=1;L1(3)AX=42C8H,BX=608DH解:ADD AX,BX CF=0 ,OF=1, AX=0AC55HSUB AX,BX;CF=0,OF=0;L3(4) AX=0D023H,BX=9FDOH解:ADD AX,BX OF=1,CF=1,AX=6FF3HSUB AX,BX ;CF=1,OF=1;L5(5)AX=9FDOH,BX=0D023H解:ADD AX,BX OF=1,CF=1,AX=6FF3HSUB AX,BX ;CF=1,OF=1;L57、 AND AL,AL JZ BRCHl RCR AL,1 JZ BRCH2 RCL AL,1 INC AL JZ BRCH3上述程序运行后,试回答:(1)当AL =00H时, 程序转向BRCHl(2)当AL =01H时, 程序转向BRCH2(3)当AL =0FFH时, 程序转向BRCH38、完成下列操作,选用什么指令: (1)将AX的内容减去0520H,和上次运算的借位; SBB AX,0520H (2)将变量名TABL的段地址送AX。 MOV AX SEG TABL9、 D1 DB 20H DUP(?) D2 DW D1请写出用一条指令实现取D1的偏移地址 SI中的三种方法。 (A) LEA SI,D1 (B) MOV SI,OFFSET D1 (C) MOV SI,D2 10、 程序段1 程序段2 MOV AX , 147BH MOV AX , 99D8H MOV BX , 80DCH MOV BX , 9847H ADD AX , BX SUB AX , BX JNO L1 JNC L3 JNC L2 JNO L4上述两个程序段执行后,分别转移到哪里?解:1) L1 ;2) L311、 MOV BX , 0FFH AND BX , 0FFFH OR BX , 0F0FH XOR BX , 00FFH上述程序段运行后,BX= 0F00H,CF= 0 12、 CMP AX , BX JGE NEXT XCHG AX , BX NEXT: CMP AX , CX JGE DONE XCHG AX , CX DONE: . 试回答:(1)上述程序段执行后,原有AX 、BX 、CX中最大数存放在哪个寄存器中? 最大数在AX中(2)这3个数是带符号数还是无符号数? 是带符号数第四章:汇编语言程序设计(一)选择题(1)若程序段中定义一个缓冲区,执行BUFFER DD 10 DUP(?)后,则缓冲区的容量是( )A、 10BYTE B、 20BYTE C、 40BYTE D、 100BYTE(2)8086汇编指令通常由( )两部分组成。A、指令标号与指令助记符 B、指令标号与操作数 C、操作数与注释 D、指令助记符与操作数(二)综
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年麦芽糖浆项目可行性研究报告
- 投资建设铝合金型材、配件项目可行性研究报告模板
- 2025年中国井式气体渗透碳炉行业市场发展前景及发展趋势与投资战略研究报告
- 河道整治土方开挖运输协议
- 2025年度汽车借用免责及车辆使用安全协议书
- 旅游景点特色装修合同模板
- 2025年度充电桩充电设施投资合作协议
- 2025年度快递仓库租赁合同(含快递安全监控服务)
- 2025年度项目组临时食宿补贴保障协议
- 2025年度房屋房贷贷款合同法律风险防范指南
- 固定翼无人机飞行原理课件
- 软基处治面积四方联测测量记录表(清淤后)
- XXXXX医院肾友会活动方案
- 隧道施工重大危险源辨识
- 环境监理业务手册(word)
- 人文关怀与优质护理课件
- 知识图谱可视化-Neo4j(windows)
- 光伏电站作业危险点分析及预控措施手册
- 2021年深圳实验学校初中部七年级入学分班考试数学试卷及答案解析
- 水文流量测验
- 合作共赢商务合作PPT模板(基础教育)
评论
0/150
提交评论