汇编复习题.

合集下载

汇编语言期末复习题

汇编语言期末复习题

(4)2000H:1010H
(2) 9.下列指令正确的是( (1)CMP [SI], [DI] (3) (3) ROL AX, 2

) (2) MUL AX, 100H (4) OR AH, CL )
(4) 10.假设(AX)=32A1H, 执行指令 AND AH, AL 之后,(AX)=( (5) (1)0020H (2)20A1H (3)0B3A1H (4)2000H
5
3. 设有以下数据段: DATA SEGMENT VA1 DW 234H,456H,0FE00H VA2 DB 34H,56H,78H,0FEH DB $-VA1 RES DB 10H DUP(3,4,5) DATA ENDS 写出下面程序段执行后RES的前五 个字节单元的内容分别是多少? MOV SI, 0 MOV CX,4 LOP: MOV AL,BYTE PTR VA1[SI] MOV RES[SI], AL INC SI LOOP LOP
…….
9
七、 DATA SEGMENT BUF DB ‘ACDECGWGH’ LENG EQU $-BUF RES DB ? DATA ENDS STACK1 SEGMENT STACK DW 20H DUP(0) STACK1 ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK1,DS:DATA START:MOV AX,DATA MOV DS,AX
4. 设 (AX)=0CF77H,(CX)=504H CLC SAR AX,CL XCHG CH,CL SHL AX, CL 上述指令执行之后, (AX)=( ),CF=( ).
6
六、编程序段 1. 下面程序段的功能是将数据 09 转 换 为 对 应 的 ASCII 码 。 试将空白处填上适当的指令。 VA DB 0,1,2,3,4,5,6,7,8,9 ASC DB 10 DUP(0)

(完整版)汇编语言复习题

(完整版)汇编语言复习题

汇编语言程序设计复习题一、单项选择题1.假设(AL)=0FFH依次执行ADD AL,0FH指令后,标志位ZF和SF的状态分别为(A )A. 0和0B. 0和1C. 1和0D. 1和12.假设V AR为变量,指令MOV BX,V AR 的寻址方式是( A )A.直接寻址B.间接寻址C.立即寻址D.存储器寻址3.下列指令中,不影响标志位的是( C )A.SUB BX,BX B.ROR AL,1 C.JNC Lable D.AND AL,CL4.假定(DS)=4000H,(DI)=0100H,(40100H)=55H,(40101H)=0AAH,试问执行指令MOV BX,[DI]后,(BX)= ( C )A.0100H B.55AAHC.AA55H D.4100H5.执行下列哪一条指令后,就能用条件转移指令判断AL和BL寄存器中的最高位是否相同?(D )A. TEST AL BLB. CMP AL BLC. AND AL BLD. XOR AL BL 6.堆栈中当前出栈的存储单元地址是(A )A. SS*10H+SPB. SS*10H+BPC. SS*10+SPD. SS*10+BP7.已知V AR DW l,2,$+2,5,6 若汇编时V AR分配的偏移地址是0010H,则汇编后0014H单元的内容是( D )A.6H B.14H C.5H D.16H8.循环控制指令REPNZ继续执行循环的条件是(B )A. CX≠0且ZF=1B. CX≠0且ZF=0C. CX≠0或ZF=1D. CX≠0或ZF=09.设NUM=11011011B,指令“MOV AL,NUM SHL 3”执行后AL中的值是(B )A.11011011000BB.11011000BC.00011011BD.00011011011B10.下面XCHG指令语句中,语法正确的是(B)A. XCHG AX,DSB. XCHG BL,[BX]C. XCHG AL,OFHD. XCHG [SI],[DI]11.算术右移SAR和逻辑右移SHR两条指令执行后结果完全相同的情况是( A )A。

汇编原理复习题及答案

汇编原理复习题及答案

一、判断题1. 8253在计数过程中,如不锁存或暂停,读出的数据不一定正确。

【答案】对2. 由于8088/8086 CPU在中断响应后自动关中断,所以在中断服务结束并返回后需用户开中断,才能再次响应中断。

()【答案】错3. 8086 的中断分为可屏蔽中断和不可屏蔽中断两种。

【答案】错4. 由于8088/8086 CPU在中断响应后自动关中断,所以在中断服务结束并返回后需用户开中断。

【答案】错5. 8086CPU在响应中断时,执行两个中断响应周期。

( )【答案】对6. 对8086系统,中断类型码的大小与中断优先级高低无关。

()【答案】对7. 对8086系统,中断优先级高低与中断类型码的大小有关。

()【答案】错8. 当中断控制器8259A设定为中断自动结束时,程序设计者无须在中断服务程序结束时向8259A发出EOI命令。

【答案】对9. CPU 在未执行完当前指令的情况下,就可响应可屏蔽中断请求。

【答案】错10. CPU响应可屏蔽中断时,无须从数据总线上读取中断类型码。

【答案】错11. 在读8253计数值时,只有在锁存或暂停时才能可靠地获得正确读数。

()【答案】对12. 8253 三个计数通道结构完全相同,且独立工作( )。

【答案】对13. 8253的每个计数器能按十进制或二进制两种制式中的一种进行计数。

【答案】对14. 若要实现定时控制,则需将定时器的计数脉冲输入信号作为中断请求信号。

()【答案】错15. 读取 8253 内的计数值时,必须先用锁存命令将当前计数值锁存在输出锁存器中()【答案】对16. 8253的每个计数器只能按二进制进行计数。

【答案】错17. 8086CPU中所有的内部中断都不能被屏蔽,且每种类型的中断有唯一对应的中断类型码。

( )【答案】错18. 若主程序中已使用IF标志位置“1”,则在执行完中断服务程序并返回主程序后,IF标志位一定为“0”。

【答案】错19. 8086 响应 INTR 请求需要执行两个总线响应周期( )。

汇编语言选择题及填空题复习部分已填写答案的

汇编语言选择题及填空题复习部分已填写答案的

汇编语言选择题及填空题复习部分已填写答案的汇编语言复习题一、选择题1.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是( C)A. C+D=BB. A+D=BC. B=DD. A>C>D2.标志寄存器中属于控制标志位的是(B )A.DF,OF,SFB.DF,IF,TFC.OF,CF,PFD.AF,OF,SF3.8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.1兆个字节D.64K个字节4.设AL中已有压缩型BCD码,为实现对AL的减1操作,可选用的指令序列是()A.DEC ALB.SBB AL,0C.SUB AL,1D.SUB AL,1AAS DAS AAS DAS5.若AX= - 15要得到AX=15应执行的指令是()A.NEG AXB.NOT AXC.INC AXD.DEC AX 6.8086/8088系统执行传送指令MOV时()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志7. MOV AL,79ADD AL,0B1H上面指令执行后,设置的标志位 CF和OF的值是()A.CF=0,OF=1B.CF=1,OF=1C.CF=0,OF=1D.CF=1,OF=08.已知AX,BX中均为带符号数,当进行字相除时,下面指令或指令序列正确的是()A.DIV BXB.CWDC.XOR DX,DXD.CBWIDIV BX DIV BX IDIV BX 9.下列指令中操作数在代码段中的是()A.MOV AL,42HB.ADD AL,BLC.SUB [BX],DID.INC [DI]10.用REPE SCASB指令对字符串进行扫描,如CX>0时,扫描结束,那么表示()A.在字符串中遇上第一个AL中指定的字符B.在字符串中有一个AL中指定的字符C.在字符串中有一个不是AL中指定的字符D.在字符串中遇上第一个不是AL中指令的字符11.下列指令执行后对源和目的操作数均无影响的是()A.MOV [BX+2],AXB.SUB AX,2467HC.SBB [SI],BXD.CMP AX,BX12.表示过程定义结束的伪指令是()A.ENDPB.ENDSC.ENDD.ENDM13.下列有语法错误的语句是()A.DB 12HB.DW 4567HC.DD ˋBCDˊD.DB ˋCDˊ14.DB1 DB 8 DUP(2 DUP(3),3 DUP(2))┇MOV AX,WORD PTR DB1 [04H]上面指令执行后,AX的内容是()A.0302HB.0203HC.0202HD.0303H15.BUF1 DB 3 DUP(0,2 DUP (1,2),3)COUNT EQU $ - BUF1符号COUNT等价的值是()A.6B.18C.16D.816.DA1 DW 2A05HDA2 DB 0FAH┇MOV AL,BYTE PTR DA1SUB DA2,AL上述指令执行后,DA2中的内容是()A.0DAHB.0FAHC.0F5HD.0D0H17.设(SS)=338AH,(SP)=450H,执行PUSH BX,和PUSHF两条指令后,堆栈顶部的物理地址是()A.33CECHB.33CF2HC.33CF4HD.33CE8H18.设(SP)=0028H,执行段内返回指令RET 6后,SP的内容是()A.0036HB.0022HC.0030HD.0020H19.条件转移指令JNBE产生转移的条件是()A. CF=0 AND ZF=0B. CF=0 AND ZF=1C. CF=1 AND ZF=0D. CF=1 AND ZF=120.已知某操作数的物理地址是2117AH,则它的段地址和偏移地址可能是( )。

汇编语言复习题附答案

汇编语言复习题附答案

汇编语言复习题附答案一、选择题1. 汇编语言是一种()。

A. 高级语言B. 机器语言C. 低级语言D. 面向对象语言答案:C2. 在汇编语言中,指令通常由()组成。

A. 操作码和操作数B. 操作数和地址C. 操作码和地址D. 操作码、操作数和地址答案:A3. 汇编语言中的寄存器通常用来()。

A. 存储数据B. 存储指令C. 存储程序D. 存储地址答案:A4. 汇编语言中的指令MOV AX, BX的作用是()。

A. 将AX寄存器的值移动到BX寄存器B. 将BX寄存器的值移动到AX寄存器C. 将AX和BX寄存器的值相加D. 将AX和BX寄存器的值相减答案:B5. 汇编语言中的循环结构通常使用()指令实现。

A. JZB. JNZC. LOOPD. CALL答案:C二、填空题1. 汇编语言中的指令ADD AX, BX表示将AX和BX寄存器的值相加,并将结果存入____寄存器。

答案:AX2. 汇编语言中的指令SUB AX, BX表示将AX寄存器的值减去BX寄存器的值,并将结果存入____寄存器。

答案:AX3. 汇编语言中的指令CMP AX, BX用于比较AX和BX寄存器的值,但不进行存储操作,结果影响____标志。

答案:标志寄存器4. 汇编语言中的指令JMP LABEL用于无条件跳转到标签____处执行。

答案:LABEL5. 汇编语言中的指令PUSH AX将AX寄存器的值压入____。

答案:堆栈三、简答题1. 简述汇编语言与机器语言的区别。

答案:汇编语言是一种低级语言,它使用助记符来表示机器语言的指令,更易于人类理解和编写。

机器语言则是由二进制代码组成的指令集,直接被计算机硬件执行,但对人类来说难以阅读和编写。

2. 描述汇编语言中如何实现条件跳转。

答案:汇编语言中实现条件跳转通常使用条件跳转指令,如JZ(跳转如果零)、JNZ(跳转如果非零)、JMP(无条件跳转)等。

这些指令根据CPU的状态寄存器中的条件码标志来决定是否跳转到指定的标签处执行。

汇编复习题

汇编复习题

1.CPU要访问的某一存储单元的实际地址称()。

A.段地址B.偏移地址C.物理地址D.逻辑地址2.某存储单元的物理地址是12345H,可以作为它的段地址有()。

A.2345H B.12345HC.12340H D.1234H3.执行后使BX=0的同时也使CF=0,OF=0的指令是()。

A.XOR BX,BX B.OR BX,BXC.AND BX,BX D.CMP BX,BX4.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是()。

A.CX≠0且ZF=1 B.CX≠0且ZF=0C.CX≠0或ZF=1 D.CX≠0或ZF=05.AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是()。

A.指令XOR AX,AX执行后,AX内容不变,但设置了标志位B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0C.指令AND AX,OFH执行后,分离出AL低四位D.NOT AX,执行后,将AX清06.无论BH中原有的数是奇数或偶数,若要使BH中的数一定为奇数,应执行的指令是()。

A.ADD BH,01H B.OR BH,01HC.XOR BH,01H D.TEST BH,01H7.完成对CL寄存器的内容乘以4的正确操作是()。

A.ROL CL,1 B.MUL 4ROL CL,1C.SHL CL,1 D.MOV CL,2SHL CL,1 SHL CL,CL8.下面各传送指令中,正确的是()。

A.MOV [DI],[SI] B.MOV[DX+DI],ALC.MOV WORD PTR [BX],0100H D.MOV AL,BX9.要实现使BETA的值为56,应采用语句为()。

A.BETA DB 56 B.BETA DB 56HC.BETA EQU 56 D.BETA EQU 56H10.比较两个带符号的数A、B,当A=B时程序转移,测试的条件为()。

A.ZF=1 B.ZF=0C.SF=1 D.SF=011.检查二个无符号数的关系,若要实现AL≥BL时分支去LOP1处,那么在“CMP AL,BL”指令后应跟的分支指令是()。

汇编语言复习题

汇编语言复习题

汇编语言复习题一、单项选择题(在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。

每小题1分,共20分)1、设DS=8225H,DI=3942H,指令NEG BYTE PTR [DI]操作数的物理地址是()。

A、85B92HB、86192HC、BB690HD、12169H2、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是()。

A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS3、循环指令LOOPNZ终止循环的条件是()。

A、CX=0,且ZF=0B、CX=0,或ZF=1C、CX≠0,且ZF=0D、CX≠0,或ZF=14、对寄存器AX的内容乘以4的正确指令序列是()。

A、SHR AX,1SHR AX,1B、SHL AX,1SHL,AX,1C、ROL AX,1ROL AX,1D、RCR AX,1RCR AX,15、执行INC指令除对于SF、ZF有影响外,还要影响的标志位是()。

A、OF,AF,PFB、OF,AF,CFC、OF,PF,CFD、AF,PF,CF6、设DH=10H,执行NEG DH指令后,正确的结果是()。

A、DH=10HCF=1B、DH=10HCF=0C、DH=10HCF=0D、DH=0F0H7、下列传送指令中有语法错误的是()。

A、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX8、下面指令执行后,改变AL寄存器内容的指令是()。

A、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL9、执行除法指令后,影响的标志位是()A、CF,OFB、SF,ZFC、CF,OF,SFD、AF,CF,OF,PF,SF,ZF都不确定10、执行下面指令序列后,结果是()。

MOV AL,82HCBWA、AX=0FF82HB、AX=8082HC、AX=0082HD、AX=0F82H11、与MOV BX,OFFSET V AR指令完全等效的指令是()。

汇编语言复习试题

汇编语言复习试题

一、选择1.下面指令执行后,改变AL寄存器内容的指令是( D )。

A.TEST AL,02HB.OR AL,ALC.CMP AL,BLD.AND AL,BL2.对寄存器AX的内容乘以4的正确指令序列是( B )。

A.SHR AX,1 /SHR AX,1B.SHL AX,1/ SHL,AX,1C.ROL AX,1 /ROL AX,1D.RCR AX,1/ RCR AX,13.设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( A )A.85B92HB.86192HC.BB690HD.12169H4.指令JMP FAR PTR DONE属于 CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址5.将DX的内容除以2,正确的指令是 CA.DIV 2 B.DIV DX,2 C.SAR DX,1 D.SHL DX,16.编写分支程序,在进行条件判断前,可用指令构成条件,其中不能形成条件的指令有( D )。

A.CMPB.SUBC.ANDD.MOV7.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是A。

A.XOR AX,AXB.AND AX,AXC.OR AX,AXD.TEST AX,08.假设执行ADD指令后AX=006EH,再执行AAA指令,AX中的值是( B )A. 14HB. 0104HC. 74HD. 04H9.用MOV指令将十进制数89以非压缩BCD码格式存入AX,可使用的指令是( D )A. MOV AX,89B. MOV AX,0809C. MOV AX,89HD. MOV AX,0809H10.下列语句中能与“DA1 DB 32H,34H”语句等效的是( A )A. MOV DA1,32HB. MOV DA1,32C. MOV WORD PTR DA1,3234HD. MOV WORD PTR DA1,‘24’MOV DA1+1,34H MOV DA1+1,3411.设NUM1 EQU 100NUM2 =64H 下面指令执行后,BL中全为1的指令是 D 。

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

复习题
一、选择题
1. 下面关于汇编语言源程序的说法中正确的是( b1 )
A. 必须要有堆栈段
B. 一个程序可以有多个代码段
C. 必须要有数据段
D. 只能有一个数据段
2. 在汇编语言程序开发中,一般要按顺序经过(A1 )过程。

a. 用文字编辑程序编写源程序
b. 用连接程序LINK连接程序
c. 用MASM汇编程序,编译成目标程序
d. 用DEBUG程序调试程序
A. abcd
B. acbd
C. adcb
D. adbc
3. 汇编语言编译程序MASM.EXE编译的对象是(A2 )文件。

A. .EXE
B. .OBJ
C. .ASM
D. .DOC
4、1KB的存储器有____个存储单元?
A、1000
B、1024
C、512
D、256
5、一个CPU的寻址能力为8KB,那么它的地址总线的宽度为A4____。

A、8
B、10
C、12
D、13
6. 1个CPU读取1024字节的数据至少读取了512次,数据总线的宽度A3_____。

A、8
B、10
C、16
D、32
7. 在8086的内存空间中下面哪段内存是不可写的a7_____。

A、0~9FFFF
B、A0000~B7FFF
C、B8000~BFFFF
D、C0000~FFFFF
8、总线从逻辑上分为3类,下列选项中不在其中的是:a6____
A、数据总线
B、并行总线
C、地址总线
D、控制总线
9、下列说法中正确的是:a5___
A、一条指令被执行后,IP的值才进行改变。

B、当CPU执行完当前指令返回debug后CPU就闲下来不再进行工作。

C、e命令可将所有内存单元中的数据进行改变。

D、CPU将CS:IP所指向的内存单元中的数据当作指令来执行。

10. 设SP初值为2000H,执行指令“ PUSH AX ”后,SP的值是(a8 )
A. 1998H
B. 1FFFH
C. 1FFEH
D. 2002H
11. 执行下列指令序列后,正确的结果是(b9 )
MOV AL,81H
ADD AL,AL
A.AL=02H
B. AL=102H
C. AL=04H
D. AL=105H
12. 下面哪个是错误的指令__a9___
A、mov ax,bx
B、add al,0f5H
C、mov al,bh
D、add al,100H
13 指令指针寄存器是(a10 )
A. BP
B. SP
C. IP
D. PSW
14. 下列地址信息与0020H:03EFH确定的内存地址不同的是_a11____。

A、5EFH
B、203H:00EFH
C、005EH:000FH
D、0002H:05CFH
15. 在8086CPU系统中一个栈段的容量最大为_a12____。

A、1KB
B、512KB
C、64KB
D、32GB
16、mov cx,5
s: mov ax,[bx]
add bx,2
loop s
上面指令序列,当指令第一次执行到add bx,2时cx的值_a13____。

A、5
B、4
C、3
D、2
17. 指令MOV AX, [ BX]中源操作数的寻址方式是(a14 )
A. 立即寻址
B. 寄存器寻址
C.寄存器间接寻址
D. 基址变址寻址
18. 在某程序中,定义了262B的数据段data,那么程序载入内存,该段实际占用的内
存空间是____B。

A、256
B、262
C、272
D、512
19、在DEBUG中,b14___选项中的命令可以修改内存单元的内容
A、a
B、d
C、t
D、u
20、下列说法中正确的是___a15_。

A、不同的微处理器有相同的机器指令集。

B、机器语言和汇编语言都需要编译程序来编译成机器指令。

C、每一个汇编指令都对应唯一的一个机器指令。

D、没有存储器CPU也可以工作
二、填空题
a1.1、1KB的存储器,存储单元的编号从0到1023
2、8086PC在存储器分段管理中,物理地址需要___2____个16位寄存器来存储。

3、1B= 8bit ,1KB= 1024B。

4、设DS=2000H,BX=1256H,(20002H)=3280H。

下列指令执行后,寄存器的值各是多少?
(1)JMP BX ; I P=____1256H_______
(2)MOV AX, DS:[2] ; AX=____3280H______
5、mov ax,936aH
mov bx,79b8H
add al,bl
指令执行后,AX =___9322H______
6、设(DS)=2000H,(ES)=3000H,(SS)=4000H,(BX)=1000H,(BP)=1000H,(SI)=0001H 计算下列各指令中源操作数的物理地址。

(1) MOV AX, ES:[1000H] ; 物理地址PA= 31000H
(2) MOV AX, [BX][SI] ; 物理地址PA= 21001H
三、判断下列指令的正误
1、ADD AX,BL (×)
2、MOV CS, BX ( ×)
3、PUSH AL (×)
4、SUB AX,[BX] (√)
5、POP CS (×)
6、ADD AX,DS (×)
b7、PUSH AL (√)
8、MOV DS, SS ( ×)
9、ADD BL, AL (√)
b10、MOV [BX], [0] ( ×)
四、程序题
a1、编程将10000H~1000FH这段空间当作栈,初始状态栈为空,写出将AX、BX中的数据交换的程序段。

MOV AX,1000H
MOV SS,AX
MOV SP,0010H
PUSH AX
PUSH BX
POP AX
POP BX
a2、写出将ax中的内容送到内存0000:0200H处的指令序列
MOV AX,0000H
MOV DS,AX
MOV AX,DS:[0200H]

MOV AX,0000H
MOV DS,AX
MOV BX, 0200H
MOV AX,[BX]
3、编程计算123与456的乘积,请将空白处的指令序列补充完整。

assume cs:code
code segment
__MOV AX,0___
MOV CX,123
S: ADD AX,456
LOOP S
mov ax,4c00h
int 21h
code ends
end
a4. 以下程序要实现一次用内存0:0--0:15单元中的数据改写程序中定义的数据,请补充完整。

assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
start:mov ax,0
mov ds,ax
mov bx,0
mov cx,8
s: MOV AX, [BX]
MOV CS:[BX], AX
ADD BX,2
LOOP S
mov ax,4c00h
int 21h
codesg ends
end start。

相关文档
最新文档