汇编语言作业2
汇编语言习题2

选择1、设AX中有一带符号数8520H,执行SAR AX,1指令后,AX中的值是()A. 0C290HB.0A40HC. 4290HD.0C260H2、下列中指令执行后,能影响标志位的指令是()A.PUSHFB.POPFC.JNLE OPRD.LOOPZ LOP3、循环控制指令LOOPNZ/LOOPNE继续执行循环的条件是()A.CX≠0且ZF=1B.CX≠0且ZF=0C.CX≠0或ZF=1D.CX≠0或ZF=04、下面两个传送指令语句中源操作数寻址方式是()V AR1 DW 32HV AR2 EQU32H┇MOV AX,V AR1MOV BX,V AR2A.都是立即数寻址B.前一条指令是立即数寻址,后一条指令是直接寻址C.前一条指令是直接寻址,后一条指令是立即寻址D.都是直接寻址5、ARRAY DW 6,9,$+4,10H,1,$+4┇MOV AX,ARRAY+4设变量ARRAY的偏移量是0084H,上述指令执行后AX中的内容是()A.008CHB. 0009C.0090HD.0001H6、指令语句中标号的错误定义是()A.在代码段中的名字项定义,后面紧跟冒号B.用EQU伪指令定义C.用LABEL伪指令定义D.由“JMP标号”指令定义7、为在一连续的存储单元中依次存放数据41H,42H,…48H,下面的数据定义语句中有语法错误的是()A.DB 41H,42H,43H,44H,45H,46H,47H,48HB.DW 4142H,4344H,4546H,4748HC.DB …ABCDEFGH‟D.DW …BA‟,…DC‟,…FE‟,…HG‟8、设NUM=11011011B,指令“MOV AX,NUM SHL 3”执行后AX中的值是()A.11011011000BB.11011000BC.00011011BD.00011011011B9、用REPE SCASB指令对字符串进行扫描,如CX≠0时,扫描结束,那么表示()A.在字符串中遇上第一个AL中指定的字符B.在字符串中有一个AL中指定的字符C.在字符串中有一个不是AL中指定的字符D.在字符串中遇上第一个不是AL中指令的字符10、设(SP)=0028H,执行段内返回指令RET 6后,SP的内容是()A.0036HB.0022HC.0030HD.0020H11. 当执行完下列指令序列后,标志位CF和OF的值为( )MOV AH,85HSUB AH,32HA. 0,0B. 0,1C. 1,0D. 1,112. 已知RET是属性为NEAR子程序中的返回指令,执行RET前SP=100,执行后,SP的内容为( )A. 102HB. 104HC. 104D. 10213. 指令MOV AX,-10[SI]的源操作数的寻址方式为( )A. 基址寻址B. 基址变址寻址C. 变址寻址D. 寄存器间接寻址14. 确定下列哪些数据在汇编语言中的表示是正确的( )A.19B+25D B. 25 AND 0D3HC.108Q-102 D. 101B MUL 0ABH15. 已知AL,BL中为无符号数, 若使AL≤BL时转到标号OK, 哪个程序段不能实现此功能( )A. CMP AL,BLB. CMP AL,BLJC OK JBE OKC. CMP BL,ALD. CMP BL,ALJNB OK JNC OK16. NEXT是程序中标号,下述哪个程序段不能实现转移到NEXT语句执行()A. JMP NEXTB. MOV BX,OFFSET NEXTJMP WORD PTR[BX]C. DA TA DW NEXTD. LEA AX,NEXTJMP DA TA JMP AX17. DA TA的定义如下:DATA DW 1234H现想把12H取入到AL寄存器,可以实现该功能的是()A. MOV AL,BYTE PRT DATAB. MOV AL,BYTE PTR DATA+1C. MOV AL,HIGH DATAD. MOV AX,DATA18、若AX=3500H,CX=56B8H,当AND AX,CX指令执行后,AX= ? ( )A. 1400HB. 77F8HC. 0000HD. 0FFFFHA.185A2HB. 0AB568HC.01004HD. 00020H19、DW 10 DUP (2 DUP(3),300H)上述定义的数据单元中,能构成0303H字存储单元的个数是()A.10HB.20HC.1EHD.9H20、用一条指令实现将寄存器BX和SI的内容相加,结果并送入AX中,这条指令是()A.ADD AX,[BX][ST]B.MOV AX,[BX][ST]C. LEA AX, [BX][SI]D. AND AX, [BX][SI]1、A2、B3、B4、C5、A6、D7、B8、A9、D 10、A 11、C 12、B 13、A 14、C 15、B 16、D 17、C 18、B 19、A 20、D程序分析1.某数据段的起始定义如下:ORG 0030HDA1 DB 0,'0',30HDW DA1数据为3000H字存储单元的偏移地址是____30H ______2.若有如下指令和伪指令序列:DA1 EQU BYTE PTR DA2DA2 DW 0ABCDH┇SHL DA1,1SHR DA2,1上述指令序列执行后,DA2字存储单元的内容是____55CDH _______4. 阅读程序回答问题STRING DB …ABCDEFGHIJ''MOV AH,01 ;从键盘输入字符1~9之间的一个数字INT 21HAND AL,0FHDEC ALXOR AH,AHMOV BX,OFFSET STRINGADD BX,AXMOV BL,[BX]MOV AH,02H ;显示输出INT 21H试回答:(1)上述程序段的功能是什么?根据从键盘输入的字符…1‟~…9‟,确定在显示器上显示STRING中第几个字符。
汇编语言 习题2

• 13、+65528;-32760 14、20A8H;11488H 15、状态;控制 16、CF;OF
17.已知:BX=1357H,DI=2000H,DS=2000H, CS=4000H,分别指出下面各指令中存储器操作数 的物理地址。 (1)MOV AL,[BX] (2)MOV CS:[BX+DI],AH
3.指令 mov ax,1020h中源操作数是( ),它的寻址 方式是( )寻址方式,操作数存放在( )段中,汇编 后的机器码为三个字节,从低地址到高地址分别为 B8、 ( )、( )。
指令 mov ax,1020h中操作数是( 1020h ),它的寻址 方式是(立即数)寻址方式,操作数存放在(代码)段中, 汇编后的机器码为三个字节,从低地址到高地址分别 为 B8H(20H10H)。注意数据在内存中是小端方式存放。
(6) 汇编语言是最快最有效的计算机语言,在自动控制、通 信与接口中是必不可少的。
(7) 汇编语言与机器低层关系不大,所以它具有很好的移植 性。 (8) 8088/8086的控制寄存器有IP和PSW,它们都是16位寄 存器。 (9) SP是保存当前栈顶地址的寄存器。
)。A
)。 B
)。 A
例:用( )指出下一条要执行的指令所在单元的偏移地址。 A.IPA B.SP C.通用寄存器 D.段寄存器 例:在计算机的CPU中执行算术逻辑运算的部件是( A.ALU B.PC C.AL D.AR A 例:计算机中存储信息的基本单位是一个( )位。 A.2进制 B.8进制 C.10进制 D.16进制 B )。
例:设物理地址(10FF0H) =10H,(10FF1H)=20H,(10FF2H)=30H,从地址10FF1H中 取出一个字的内容是( )。 B A.1020H B.3020H C.2030H D.2010H 例:代码段寄存器是( )。 D A.IP B.SP C.DS
汇编语言练习题2

一、单项选择题(共20题)1.对于有符号的数来说,下列哪个值最大( D)A:0F8H B:11010011B C:82 D:123Q2.下列有关汇编语言中标号的命名规则中,错误的是(D )A:通常由字母打头的字符、数字串组成 B:标号长度不能超过31个字符C:?和$不能单独作为标号 D:.号不可位于标号首3.设A=0.4H,B=0.8H,C=0.4,D=0.4Q,它们之间的关系是(C )。
A.C+D=B B.A+D=BC.B=D D.A>C>D4.下列四个寄存器中,可作为十六位寄存器的是(C )A.DL B.CLC.BP D.EBX5.8088/8086存储器分段,每个段不超过( D)A.64K个字B. 32K个字节C.1兆个字节D.64K个字节6.寻址指令MOV CX, [BX + DI + 20]使用的是哪一种寻址方式( B)A:寄存器寻址B:相对基址变址寻址C:变址寻址D:基址变址寻址7.连接程序把汇编语言源程序生成的目标文件(.OBJ文件)转换成( B)。
A..OBJ文件B..EXE文件C..LST文件D..CRF文件8.在程序运行过程中,确定下一条指令的物理地址的计算表达式是( A)。
A. (CS)×16+(IP)B. (DS)×16+(DI)C. (SS)×16+(SP) D.(ES)×16+(SI)9.若AX= - 15要得到AX=15应执行的指令是(A )A.NEG AXB.NOT AXC.INC AXD.DEC AX10.8086/8088系统执行传送指令MOV时(A )A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志11.执行下列程序后,(AL)=(D )H。
DATA SEGMENTTAB DB ‘0123456789’DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX, DATAMOV DS, AXMOV BX, OFFSET TABMOV AL, 04XLAT TAB…A.04 B.0400C.33 D.3412.下列指令中操作数在代码段中的是(A )。
汇编语言程序设计复习2(带答案)1

汇编语言程序设计练习题2一、单项选择题(答案BDDBA BDADC CCAC CBBDA BDADA BCCB )1、使计算机执行某种操作的命令是( )A.宏指令B.指令C.伪指令D.语句2、某存储单元的物理地址是12345H,可以作为它的段地址有()。
A.2345H B.12345HC.12340H D.1234H3、8088/8086存储器分段,每个段不超过()A.64K个字B.32K个字节C.1兆个字节D.64K个字节4、计算机能直接识别并执行的语言是( )A.汇编语言B.机器语言C.高级语言D.低级语言5. 8086/8088系统执行传送指令MOV时()A.不影响标志位B.影响DF方向标志C.影响SF符号标志D.影响CF进位标志6、以下各个指令中正确的是()。
A. MOV CS, DXB. MOV DS, BPC. IN 20H,ALD. MOV AH, BX7、下列对OUT指令的叙述正确的是()。
A. 实现从端口中读出数据B. 能直接访问的端口范围是0~1KBC. 能访问的端口为64KBitD. 只能用DX做为间接寻址的寄存器8、已有汇编语句“V AR EQU 1220H”,则语句“mov AX, V AR”中源操作数的寻址方式为()。
A. 立即寻址B. 直接寻址C. 寄存器间接寻址D. 基址寻址9、与MOV BX,OFFSET DATA1指令完全等效的指令是()。
A.MOV BX,DATA1B.LDS BX,DATA1C.LES BX,DATA1D.LEA BX,DATA110、下列指令中段默认为堆栈段的是()A.MOV AX,[BX+SI+10]B.ADD AX,ES:[SI]C.SUB BX,[BP][DI]D. MOV DX,[1000H]11、已知DS=2000H,ES=1000H, SI = 0800H,内存10880H开始的两个单元中存放5678H,内存20880H开始的两个单元中存放8765H,则语句“LEA BX,[SI+80H]”执行后BX 的值为()。
东师《汇编语言程序设计16秋在线作业2

B.正确
正确答案:
18.子程序的类型属性只能为NEAR。
A.错误
B.正确
正确答案:
19. DMA方式又叫做直接存储器存取方式。
A.错误
B.正确
正确答案:
20.高级算法语言是计算机硬件能直接识别和执行的语言。
A.错误
B.正确
正确答案:
汇编语言程序设计16秋在线作业2
一、单选题(共10道试题,共30分。)
东北师范大学东师汇编语言程序设计16秋在线作业2
一、单选题(共10道试题,共30分。)
1.调用一个子程序结束之后需返回应该用()指令。
A. Call
B. iret
C. ret
D. iret or ret
正确答案:
2.在实现CASE结构时,除了用分支结构if—else之外还可以用()
A.跳跃表发
B.循环法
正确答案:
8.指令LOOPNZ退出循环的是()
A. CX=0且ZF=1
B. CX=0且ZF=0
C. CX=0或ZF=1
D. CX=0或ZF=0
正确答案:
9. MOV AX,100[SI][BP]的寻址方式()
A.基址变址寻址
B.变址寻址
C.立即寻址
D.寄存器寻址
正确答案:
10.键盘硬中断的中断向量地址为()
A.错误
B.正确
正确答案:
17. RAM中的信息既能读又能写,断电后其中的信息不会丢失。
A.错误
B.正确
正确答案:
18. DMA方式又叫做直接存储器存取方式。
A.错误
B.正确
正确答案:
19.指令cmp 15,BX指令是正确的。
2020年中国石油大学北京网络学院 汇编语言程序设计-第二次在线作业 参考答案

中国石油大学北京网络学院
汇编语言程序设计-第二次在线作业
参考答案
1.(
2.5分)下列叙述正确的是:
A、对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS 指令
B、对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP 指令
C、对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL 指令
D、对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB 指令
我的答案:C 此题得分:2.5分
2.(2.5分)在下列指令的表示中,不正确的是:
A、MOV AL,[BX+SI]
B、JMP SHORT DONING
C、DEC [BX]
D、MUL CL
我的答案:C 此题得分:2.5分
3.(2.5分)在进行二重循环程序设计时,下列描述正确的是:。
汇编语言练习2+答案

全国2005年10月高等教育自学考试汇编语言试题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.当执行ADD AX,BX指令后,若AX的内容为4E52H时,设置的奇偶标志位PF=0,下面的叙述正确的是( A)A.表示结果中含1的个数是奇数B.表示结果中含1的个数是偶数C.表示该数是奇数D.表示结果中低8位中含1的个数是奇数2.设物理地址(21000H)=20H,(21001H)=30H,(21002H)=40H。
如从地址21001H中取出一个字的内容是( D)A.2030HB.3040HC.3020HD.4030H3.转移指令JMP NEAR PTR PROCA的转移范围是( A )A.8000H~7FFFHB.7FFFH~0FFFHC.80H~7FHD.0FH~7FH4.设CF=1,实现AL内容乘2的指令是( C )A.RCL AL,1B.SAR AL,1C.SHL AL,1D.ROR AL,15.算术右移指令SAR和逻辑右移指令SHR,两条指令执行结果完全相同的条件是( A )A.目的操作数最高位为0B.目的操作数最高位为1C.目的操作数为任意情况D.无论什么情况都不可能完全相同6.没有语法错误的输入指令是( A )A.IN AL,30HB.IN 30H,ALC.IN DX,ALD.IN AL,[BX]7.与LEA BX,BUF指令完全等效的指令是( C)A.MOV BX,BUFB.LDS BX,BUFC.MOV BX,OFFSET BUFD.MOV BX,WOKD PTR BUF8.设有变量VAR和标号LAB,不正确的指令是( C)P85A.LEA AX,VARB.LEA AX,LABC.JMP NEAR PTR VARD.JMP SHORT LAB9.设SP的初值为1000H,执行指令PUSH AX后SP的值是( C )A.0FFFHB.1001HC.0FFEHD.1002H10.下列指令执行后既能使AX=0同时又使CF=0,OF=0的是( A )P69A.XOR AX,AXB.AND AX,AXC.OR AX,AXD.TEST AX,011.在指令的操作数字段中,允许出现表达式,若BUF1与BUF2均为变量名,下面指令中正确的是( D )A.MOV DX,BUF1*BUF2B.MOV DX,BUF1/BUF2C.MOV DX,(BUF1*BUF2)-BUF1D.MOV DX,BUF2-BUF112.汇编语言源程序,可以是( D )A.可以直接由机器执行B.必须由编译程序生成目标程序才能执行C.必须由解释程序生成目标程序才能执行D.必须由汇编程序汇编成目标程序才能执行13. ORG 200HBUF DB 12H,34HMOV AX,WORD PTR BUF上述指令语句执行后AX中的内容是( A )A.3412HB.1234HC.0200HD.0012H14.伪指令DA1 DB 04H DUP(3 DUP(2),2 DUP(3))在数据区中能构成0203H操作数共有( C)A.07个B.04个C.03个D.02个15.设NUM1 EQU 100NUM2= 64H下面指令执行后,使BL中为全1的指令是( A)P139A.MOV BL,NUM1 EQ NUM2B.MOV BL,NUM1 LT NUM2C.MOV BL,NUM1 NE NUM2D.MOV BL,NUM1 GT NUM216.设非压缩BCD码(AL)=09H,(BL)=04H在执行SUB AL,BL指令后应选的校正指令是P68( B )A.DAAB.AASC.DASD.AAA17.设AX=9ABCH,DX=8765HPUSH AXPUSH DXPOP AXPOP DX上述4条指令执行后,AX,DX中内容分别是( D )A.AX=9ABCH DX=8765HB.AX=9ABCH DX=9ABCHC.AX=8765H DX=8765HD.AX=8765H DX=9ABCH18.DA1 EQU WORD PTR DA2DA2 DB 0ABH,0CDHSHL DA1,1SHR DA2,1上述两条指令执行后,DA1中两字节单元内容分别是( D )A.0ABH,0CDHB.2BH,9BHC.4DH,57HD.56H,9BH19.无条件转移指令JMP实现段间间接转移,转移的目标地址在( B )A.某个字存储单元中B.某个双字存储单元中P86C.某个16位通用寄存器中D.两个16位通用寄存器中20.检查BUF单元的内容是否为正偶数,下面程序段正确的是( D )A.MOV AL,BUFB.MOV AL,BUFJS K1 AND AL,11HSHR AL,1 JNE K1JC K1 ……;是正偶数……;是正偶数K1:……K1:……C.MOV AL,BUFD.MOV AL,BUFJNP K1 TEST AL,81HTEST AL,80H JNE K1JNE K1 ……;是正偶数……;是正偶数K1:……K1:……二、填空题(本大题共5小题,每小题1分,共5分)21.8086/8088存贮器地址分段时,每个段起始地址的特征是__偶地址__。
汇编语言试题 (2)

汇编语言试题题目一:寄存器及栈操作假设有一段汇编代码如下,请根据代码的功能回答相应的问题:push ebpmov ebp, espmov eax, dword ptr [ebp + 8]add eax, dword ptr [ebp + 12]pop ebpret1.以上汇编代码中,push ebp和pop ebp的作用分别是什么?2.mov ebp, esp的作用是什么?有什么作用范围?3.dword ptr是什么意思?4.请解释ret的作用。
解答:1.push ebp的作用是将ebp的值保存到栈中,而pop ebp的作用是将栈中的值弹出,并将其赋给ebp寄存器。
这是函数调用的常用操作,用来保存和恢复函数的堆栈帧。
12.mov ebp, esp的作用是将栈顶地址存入ebp寄存器中,以便在函数内部可以通过ebp寄存器来访问函数参数和局部变量。
作用范围是当前函数内部。
3.dword ptr是一个内存访问修饰符,用来指定要访问的内存单元的大小和类型。
在本题中,dword ptr指示要访问的内存单元是一个 32 位的双字(double word)。
4.ret指令用于函数返回,它将弹出栈顶的返回地址,并跳转到该地址执行,从而实现函数的返回。
题目二:条件分支和循环请完成以下汇编代码的功能描述,并回答相应问题:mov eax, 10mov ecx, 0loop:cmp eax, 0je endadd ecx, eaxdec eaxjmp loopend:1.请描述以上汇编代码的功能。
2.eax和ecx分别用来存储什么数据?请解释mov eax, 10和mov ecx,0的作用。
3.cmp eax, 0和je end的作用是什么?24.dec eax是什么意思?5.jmp loop的作用是什么?解答:1.以上汇编代码的功能是计算从 10 累加到 1 的结果,并将结果存储在ecx寄存器中。
2.eax用来存储循环计数器(初始值为 10),ecx用来存储累加结果。
汇编语言程序设计(第四版)第2章【课后答案】讲解

汇编语言程序设计第四版【课后习题答案】--囮裑為檤第2章8086的指令系统〔习题2.1〕已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12 34 56 78H,[21200H]~[21203H]依次存放2A 4C B7 65H,说明下列每条指令执行完后AX寄存器的内容。
(1)mov ax,1200h(2)mov ax,bx(3)mov ax,[1200h](4)mov ax,[bx](5)mov ax,[bx+1100h](6)mov ax,[bx+si](7)mov ax,[bx][si+1100h]〔解答〕(1)AX=1200H(2)AX=0100H(3)AX=4C2AH ;偏移地址=bx=0100h(4)AX=3412H ;偏移地址=bx=0100h(5)AX=4C2AH ;偏移地址=bx+1100h=1200h(6)AX=7856H ;偏移地址=bx+si=0100h+0002h=0102h(7)AX=65B7H ;偏移地址=bx+si+1100h=0100h+0002h+1100h=1202h〔习题2.2〕指出下列指令的错误(1)mov cx,dl(2)mov ip,ax(3)mov es,1234h(4)mov es,ds(5)mov al,300(6)mov [sp],ax(7)mov ax,bx+di(8)mov 20h,ah〔解答〕(1)两操作数类型不匹配(2)IP指令指针禁止用户访问(3)立即数不允许传给段寄存器(4)段寄存器之间不允许传送(5)两操作数类型不匹配(6)目的操作数应为[ SI ](7)源操作数应为[BX+DI](8)立即数不能作目的操作数〔习题2.3〕已知数字0 ~ 9对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、11H、12H、14H,它存在于以table为首地址(设为200H)的连续区域中。
东大14秋学期《汇编语言程序设计》在线作业2答案

14秋学期《汇编语言程序设计》在线作业2
单选题判断题
一、单选题(共10 道试题,共50 分。
)
1. 一个字所能表示的无符号整数数据范围为()。
A. 0~65536
B. 0~65535
C. -32768~32767
D. -32767~32767
-----------------选择:B
2. 若栈顶指针SP的值为100H,当执行完指令PUSH AX后,SP的值为()。
A. 00FCH
B. 00FAH
C. 00FEH
D. 0106H
-----------------选择:C
3. 以8086/8088为CPU的微机内存最大容量为( )。
A. 4MB
B. 1MB
C. 640KB
D. 64KB
-----------------选择:B
4. 指令MOV AX,[BX+10]的源操作数字段的寻址方式是()。
A. 寄存器直接寻址
B. 寄存器间接址
C. 变址寻址
D. 基址寻址
-----------------选择:D
5. 指令JMP WORD PTR[BX] 转移的目标地址是( )
A. BX的内容
B. SP+BX之和
C. IP+[BX]之和
D. BX指出的内存单元之内容
-----------------选择:D
6. 当CX=0时,REP MOVSB执行的次数为。
( )
A. 0次
B. 1次
C. 65535次
D. 65536次
-----------------选择:A
7. 确定下列那些数据在汇编语言中是非法的()。
汇编语言习题答案 (2)

第1章自测练习一、选择题(四选一)1.某个加法运算结果使标志ZF=1,则标志SF为A。
A 0B 1C 不改变原来的状态D 不确定2.可以为存储器操作数提供偏移地址的寄存器组是B。
A AX、BX、CX、DXB BX、BP、SI、DIC SP、IP、BP、DXD CS、DS、ES、SS3.8086/8088确定下一条执行指令物理地址的计算表达式为D。
A DS× 16+EAB ES× 16+EAC SS×l6+SPD CS×l6+IP4.某系列微机对存储器分段,如果每个段最多的字存储单元(16位二进制)是32K,那么表示段内字节单元偏移地址的二进制位数应是C位。
A 14B 15C 16D 205.十进制数-100的8位二进制数的补码为 D 。
A 10011011B 01100100C 10011101D 100111006.下列各个8位二进制数的补码中,绝对值最大的是 A 。
A 10001000B 11111110C 00000100D 000000017.16位有符号数的补码所表示的十进制数的范围是B。
A -32767~+32768B -32768~+32767C -65535~+65536D 0~655358.对数值83A7H作逻辑非运算后的结果是D。
A 83A8H B、73A8H C、7C59H D、7C58H9.指令“mov cx,[bp+16]”的源操作数采用的段寄存器是 B 。
A CSB SSC DSD ES10.指向程序堆栈区的段寄存器是 B 。
A CSB SSC DSD ES11.有效地址是指 C 。
A 存储器操作数的物理地址B 存储器操作数的段地址C 存储器操作数的偏移地址D 立即数的偏移地址12.寄存器间接寻址方式中,操作数在 C 中。
A 通用寄存器B 段寄存器C 主存单元D 堆栈13.指令“mov ax,es:[bx][si]”源操作数的物理地址是D。
汇编语言实验报告2

调试程序功能段一、实验目的1.继续学习使用DEBUG程序的各种命令。
2.利用DEBUG学习了解计算机取指令、执行指令的工作过程。
3.掌握8086/8088基本指令的使用方法和功能。
二、实验任务1.按照下列给定步骤完成求累加和程序:程序:MOV BX,1000MOV CX,10MOV AL,0LOP: ADD AL,[BX]INC BXJ: L OOP LOPINT3步骤:1)用A命令将程序键入到100H开始的内存中,在键入时记下标号LOP和J的实际地址,在键入LOOP指令时LOP用实际地址值代替。
2)用命令N AA将此程序命名为文件AA(文件名可任取)。
3)用R命令将BX:CX改为程序长度值(即最后一条指令后面的地址减去开始地址) ,用R命令把BX设为:0000H,CX 设为文件长度。
4)用命令W 100将此程序存到AA命名的磁盘文件中。
5)用命令Q退出DEBUG。
6)用命令DEBUG AA再次调入DEBUG和文件AA,可用U命令检查调入程序。
若调入DEBUG时忘了加AA文件名,可用N命令和L命令将文件调入。
7)8)用E命令在内存地址1000H处键入16个数字9)用命令G=100 J(J用实际地址代替),使程序运行并停在断点J上,检查AX,BX的值是否符合你的预计值。
10)用T命令运行一步,观察程序方向(IP值)和CX值是否与你的估计一样, 若不一样,检查程序是否有错。
11)重复G J与T,再检查AX是否正确。
(J为断点地址)12)用G命令使程序运行到结束,检查AX值是否正确。
2.用命令A汇编下列指令,判断指令正误并说明原因。
(1)LEA DI,[AX](2)MOV DS,2010(3)PUSH AL(4)OUT 900,AL(5)MOV [BX],03.利用T,P,G命令,执行下列指令段,注意它们的不同之处。
(6)MOV DI,300MOV SI,400MOV CX,3CLDREP MOVSBINT 3(7)MOV AH,2MOV DL,41INT 21INT 34.程序: MOV DI,1000MOV CX,8MOV SI,2000CLCLOP: MOV AL,[SI]ADC[DI],ALINC SIINC DILOOP LOPINT20步骤:1)用A命令键入此程序2)用E命令在1000H开始处键入一个8字节被加数,在2000H开始处键入一个8字节加数,均为低字节在前面。
汇编语言2(沈美明)

3.3.3、逻辑运算和移位指令 逻辑运算和移位指令
用途:用于8/16位数据的逻辑操作。 用途:用于8/16位数据的逻辑操作。 8/16位数据的逻辑操作 分类:逻辑运算指令: 分类:逻辑运算指令: 逻辑移位指令: 逻辑移位指令: AND、OR、NOT、XOR、 AND、OR、NOT、XOR、TEST SHL、SAL、SHR、SAR、ROL、 SHL、SAL、SHR、SAR、ROL、 ROR、RCL、 ROR、RCL、RCR
CF
注意: 注意: 1、目标操作数可以是字、字节。 目标操作数可以是字、字节。 CF 2、只能对寄存器、存储器操作 只能对寄存器、 3、最多移位255次 最多移位255次 255
3.3.3.4 、移位指令之 移位指令之RCL/RCR
功能:循环左/右移位 功能:循环左/ 格式: RCL/RCR 格式: 操作: 操作: CF 注意: 注意: 1、目标操作数可以是字、字节。 目标操作数可以是字、字节。 CF 2、只能对寄存器、存储器操作 只能对寄存器、 3、最多移位255次 最多移位255次 255 REG/MEM, 1/CL
SAL/SAR例 例
例:SAL AX,1 SAR BL,1 MOV CL,06H SAR WORD PTR[BX+SI],CL 有符号数的乘法: 有符号数的乘法: CBW SAL AX,4
3.3.3.4 、移位指令之 移位指令之ROL/ROR
功能:循环左/右移位 功能:循环左/ 格式: ROL/ROR 格式: 操作: 操作: REG/MEM, 1/CL
3.3.3.1 、逻辑运算之 逻辑运算之TEST
北京航空航天大学北航2015年春《汇编语言》在线作业二满分答案

北航《汇编语言》在线作业二一、单选题:1.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是( )。
(满分:4)A. 表示结果中含1的个数为偶数B. 表示结果中含1的个数为奇数C. 表示该数为偶数D. 表示结果中低八位含1的个数为偶数正确答案:D2.汇编语言语句格式中对名字项的规定如下,请找出其中错误的说法()(满分:4)A. 名字的第一个字符可以是大写英文字母及小写英文字母B. 名字的第一个字符可以是字母、数字及、@、C. 名字的有效长度≤31个字符D. 在名字中不允许出现$正确答案:B3.条件转移指令JNE的测试条件为( ). (满分:4)A. ZF=0B. CF=0C. ZF=1D. CF=1正确答案:A4.数据传送指令中,错误的操作是( )。
(满分:4)A. MOV SS正确答案:D5.MOV BH,1000[SI],该指令中源操作数采用的寻址方式是( ) (满分:4)[BX+DI]1000HB. MOV DX1000HC. MOV WORD PTR[BX]1000HD. MOV DS2000H正确答案:C6.循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是( ) (满分:4)A. 立即B. 直接C. 寄存器相对D. 寄存器间接正确答案:B7.下列指令执行时出错的是( ) (满分:4)A. CX≠0且ZF=1B. CX≠0且ZF=0C. CX≠0或ZF=1D. CX≠0或ZF=0正确答案:A8.在下列指令的表示中,不正确的是( ) (满分:4)A. ADD BUF1,BUF2B. JMP DWORD PTR DAT [BX]C. MOV AX,[BX+DI] NUMD. TEST AL,08H正确答案:C9.在汇编语言程序中,对END语句的叙述正确的是( ) (满分:4)A. MOV AL,[BX+SI]B. JMP SHORT DONIC. DEC [BX]D. MUL CL正确答案:C10.执行下列指令后,正确的结果是( )MOV AL,100 MOV BL,-2 (满分:4)A. END语句是一可执行语句B. END语句表示程序执行到此结束C. END语句表示源程序到此结束D. END语句在汇编后要产生机器码正确答案:B11.根据下面定义的数据段:DESG SEGMENT DAT1 DB ‘1234’DAT2 DW 5678H ADDR EQU DAT2-DAT1DESG ENDS执行指令MOV AX ADDR后,AX寄存器中的内容是( ) (满分:4)A. AL=100H BL=02HB. AL=64H BL=0FEHC. AL=64H BL=82HD. AL=100H BL=0FEH正确答案:D12.指令JMP FAR PTR DONE属于( ) (满分:4)A. 5678HB. 7856HC. 4444HD. 0004H正确答案:C13.在执行DAA指令,当高四位BCD码校正时产生进位,如要把此进位值送入AH中,对这进位值的操作应是( ) (满分:4)A. 段内转移直接寻址B. 段内转移间接寻址C. 段间转移直接寻址D. 段间转移间接寻址正确答案:C14.下列指令执行后总是使CF=0,OF=0的是( )。
汇编语言(第2版)-郑晓薇-汇编语言习题-测验题答案

汇编语言(第2版),郑晓薇汇编语言各章习题、测试题答案习题一1.1 分别将下列二进制数作为无符号数和带符号数转换为十进制和十六进制数11010011 01110111 10000011 00101111 101010101.2 十六进制运算1A52H+4438H 3967H-2D81H 37H×12H 1250H×4H1.3 将十进制数变为8位补码并做运算(结果用二进制、十六进制、十进制表示)29+53 73-24 -66+82 -102-151.4 用压缩BCD码计算(结果用二进制、BCD码、十进制表示)29+53 73-24 66+18 132+751.5 符号位扩展(字节扩展为字,字扩展为双字)20A3H 94H 3456H 7FH EC00H1.6 若机器字长为16位,其无符号数表示范围是多少?带符号数表示范围是多少?分别用十进制和十六进制表示。
1.7 写出下列十六进制数所能代表的数值或编码:(1)38H (2)FFH (3)5AH (4)0DH1.8 将下列十进制数分别转换为二进制、十六进制、二进制补码、压缩BCD码和ASCII码:(1)108 (2)46 (3)-15 (4)2541.9 写出下列算式的8位二进制运算结果,标志位CF、SF、ZF、OF分别是什么值?(1)56+63 (2)83-45 (3)-74+29 (4)-12-371.10 查表,指出ASCII码0DH、0AH、07H、1BH、20H、60H、50H、70H对应的控制字符。
测验一单选题:1.已知X=76,则[X]补= 。
A. 76HB. 4CHC.0B4HD.0CCH2.已知[X]补=80H,则X= 。
A. 80HB. 0C. 0FFHD. -80H3.已知[X]补=98H,则[X]补/2= 。
A. 0CCHB.4CHC. 49HD. 31H4.已知X=78,Y=-83,则[X+Y]补= 。
A. 0F5HB. 0A1HC. 0FBHD. 65H5.将124转换成十六进制数的结果是A. 7CHB. 7DHC. 7EHD. 7BH6.将93H看成一个压缩BCD码,其结果是A. 10010101B. 10010011C.10000011D.100000017.45转换成二进制数是A.10101101B.00111101C. 00101101D. 100111018.6CH转换成十进制数是A. 118B. 108C. 48D. 689.将93H扩展为字的结果是A. FF93HB. 0093HC. 1193HD. 1093H10.56的压缩BCD码是A. 38HB. 56HC. 0506HD. 3536H11.ASCII中的47H表示的字符是A. “7”B. “G”C. “g”D. “E”12.十进制数-128的8位二进制数的补码为A. 11111110B. 01111111C. 10000000D. 1000000113.下列为补码表示,其中真值最大的是A. 10001000B.11111111C.00000000D.0000000114.十六进制数88H,可表示成下面几种形式,请找出错误的表示A. 无符号十进制数136B. 带符号十进制数-120C. 压缩BCD码十进制数88D. 8位二进制数-8的补码15.计算机对字符、符号采用统一的二进制编码。
汇编语言程序设计(第四版)第2章【课后答案】

汇编语言程序设计第四版【课后习题答案】--囮裑為檤第2章8086的指令系统〔习题2.1〕已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12 34 56 78H,[21200H]~[21203H]依次存放2A 4C B7 65H,说明下列每条指令执行完后AX寄存器的内容。
(1)mov ax,1200h(2)mov ax,bx(3)mov ax,[1200h](4)mov ax,[bx](5)mov ax,[bx+1100h](6)mov ax,[bx+si](7)mov ax,[bx][si+1100h]〔解答〕(1)AX=1200H(2)AX=0100H(3)AX=4C2AH ;偏移地址=bx=0100h(4)AX=3412H ;偏移地址=bx=0100h(5)AX=4C2AH ;偏移地址=bx+1100h=1200h(6)AX=7856H ;偏移地址=bx+si=0100h+0002h=0102h(7)AX=65B7H ;偏移地址=bx+si+1100h=0100h+0002h+1100h=1202h〔习题2.2〕指出下列指令的错误(1)mov cx,dl(2)mov ip,ax(3)mov es,1234h(4)mov es,ds(5)mov al,300(6)mov [sp],ax(7)mov ax,bx+di(8)mov 20h,ah〔解答〕(1)两操作数类型不匹配(2)IP指令指针禁止用户访问(3)立即数不允许传给段寄存器(4)段寄存器之间不允许传送(5)两操作数类型不匹配(6)目的操作数应为[ SI ](7)源操作数应为[BX+DI](8)立即数不能作目的操作数〔习题2.3〕已知数字0 ~ 9对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、11H、12H、14H,它存在于以table为首地址(设为200H)的连续区域中。
汇编语言实验2-顺序程序设计

汇编语言实验报告Assembly Language Programming Lab Reports______________________________________________________________________________班级: _________ 姓名:___________ 学号:___________ 实验日期:_____________学院: _____计算机与通信工程学院____ 专业:_______计算机科学与技术___________实验顺序:___实验二____ 实验名称: ___________顺序程序设计________________ 实验分数:_______ 考评日期:________ 指导教师:______________________________________________________________________________一.实验目的1.掌握非压缩的BCD码运算及其调整办法。
2.掌握Dos功能调用int 21h的1,2,9,10号功能。
3.掌握Bios功能调用int 10h的3号功能。
______________________________________________________________________________二.实验环境操作系统:windows xp编译程序:masm 5.0______________________________________________________________________________三.实验原理1.dos功能调用,利用10号dos功能调用,输入一串字符串,利用9号dos功能调用,输出显示之前输入的字符串代码如下:2.利用int10h获得光标的行列号,算出相应在显存的位置,输出想要的字符代码如下:3.输入是转化由ascii码转成实际十六进制数,mul相乘后,采用非压缩bcd码相乘调整aam,高位低位分别采用非进位加法和进位加法,最后转回ascii码输出代码如下:______________________________________________________________________________四.实验步骤及结果分析1.Dos功能调用。
汇编语言程序设计第二次作业

首页一.单选题(共40题,40.0分)1AOV网是一种( )。
•A、有向图•B、无向图•C、无向无环图•D、有向无环图正确答案: D 我的答案:D得分: 1.0分2指令“MOV AX,0FH XOR 1111B”执行后的结果是( )。
•A、0FFFFH→AX•B、0FH→AX•C、1111B→ AX•D、0→AX正确答案: D 我的答案:D得分: 1.0分3已知(AL)=35H, (BL)=57H,执行指令ADD AL, BLDAA后,AL的值为()。
•A、92HB、8CHC、92D、CH正确答案: A 我的答案:A得分: 1.0分4设Huffman树的叶子结点数为m,则结点总数为( )。
•A、2m•B、2m-1•C、2m+1•D、m+1正确答案: B 我的答案:B得分: 1.0分5以下程序段中,有数据2000H的字单元的偏移量分别是( )。
ORG 20HVAR1 DB 0,’0’,20H,0,20HDW VAR1•A、03H•B、21H•C、22H•D、23H•E、24H正确答案: D 我的答案:E得分: 0.0分6图所示二叉树结点的前序遍历的序列为( )。
•A、E、G、F、A、C、D、B•B、 E、A、G、C、F、B、D•C、E、A、C、B、D、G、F•D、E、G、A、C、D、F、B正确答案: C 我的答案:C得分: 1.0分7ORG 100HNUM EQU 42HDA1 DW $+56H……MOV BX,0FFSET DA1上述程序段执行后BX中的值是( )。
•A、42H•B、156H•C、100H•D、157H正确答案: C 我的答案:C得分: 1.0分8对线性表进行二分法查找,其前提条件是( )。
•A、线性表以链接方式存储,并且按关键码值排好序•B、线性表以顺序方式存储,并且按关键码值的检索频率排好序•C、线性表以顺序方式存储,并且按关键码值排好序•D、线性表以链接方式存储,并且按关键码值的检索频率排好序正确答案: C 我的答案:A得分: 0.0分9为实现单步操作,即每执行完一条指令就停下来,必须设置标志位( )。
《汇编语言程序设计》作业习题

《汇编语言程序设计》作业习题第1章汇编语言基础知识习题1.1 什么是汇编语言?汇编语言的特点是什么?1.2 把下列十进制数转换成二进制数、八进制数、十六进制数。
① 127 ② 1021 ③ 0.875 ④ 6.251.3把下列二进制数转换成十进制数。
① 1001.11 ② 101011.10011 ③ 111.011 ④ 1011.11.4 把下列八进制数转换成十进制数。
① 573.06 ② 75.23 ③ 431.7 ④ 123.451.5 把下列十六进制数转换成十进制数。
① 0D5.F4 ② 8BA.7C ③ 0B2E.3A ④ 6EC.2D1.6 把下列英文单词转换成ASCII编码的字符串。
① Upper ② Blow ③ Computer ④ What1.7 求下列带符号十进制数的8位基2码补码。
① +127 ②−2 ③−128 ④ +21.8 求下列带符号十进制数的16位基2码补码。
① +628 ②−9 ③−1234 ④ +32491.9 下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。
①68+(―53)②68―53 ③68―(―53)④(―68)―531.10 汉字在输入、存储、输出过程中所使用的汉字编码是否一样?使用的是什么编码?第2章 IBM-PC系统结构习题2.1什么是微型计算机?微型计算机主要由哪几部分组成?其主要功能是什么?2.2 8086/8088CPU由哪两部分组成?它们的主要功能是什么?2.3 8086/8088CPU有哪些寄存器?各有什么用途?2.4 8086/8088CPU哪些寄存器可以用来指示存储器地址?2.5标志寄存器中有哪些状态标志和控制标志?它们每一位所表示的含义是什么?2.6有两个16位数3A4BH和10EFH分别存放在2000H和2004H存储单元中,请用图表示出它们在存储器里的存放情况。
2.7一个存储单元的物理地址、段地址、偏移地址三者之间有何关系?2.8在DEBUG程序中,一条指令语句表示为2000:0030 MOV AL,8。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SIZE ARRAY的值是________
9、在编写汇编语言程序时,常常对存储单元赋予一个名字,这些存储单元一般有三种类型的用途:常数单元、()单元和()单元
10、循环结构程序主要由三部分组成:循环参数置初值部分、()和()
11、某程序调用一个或若干个子程序,称为()。某个程序调用某一子程序,而该子程序又调用另外一个子程序,称为()
(3)将字节数据数据56H,0C6H,78H,12H存放在字变量ALPHA的存储单元中,并且不改变数据按字节存储的次序。
(4)在BETA为首地址的存储单元中连续存放字节数据:2个23,5个‘A’,10个(1,2),20个空单元。
(5)在STRING为首地址的存储单元中存放字符串‘THIS IS A EXAMPE’
A、-128~+127 B、0~255 C、-126~+128 D、-127~+127
26、串指令中的目的操作数地址是由()提供
A、SS:[BP] B、DS:[SI] C、ES:[DI] D、CS:[IP]
27、在循环程序的执行过程中,为保证循环过程的有序性,要对一些参数值加以修正,该项操作发生在
A、循环控制部分B、循环工作部分C、循环设置部分D、循环结束部分
SHL AL,1
DEC AL
MOV BYTE PTR Y,AL
A、y=2x+1 B、x=2y+1 C、y=2x-1 D、x=2y-1
24、指令JMP WORD PTR[BX]属于
A、段内转移直接寻址B、段间转移直接寻址C、段内转移间接寻址D、段间转移间接寻址
25、执行JMP SHORT DEST指令,该指令的位移量范围是在()之间
(2)程序运行后AX=?
11、DATA SEGMENT
ADR DW 23ABH,1570H,567,175AH,436,5210H
COUNT EQU($-ADR)/2
DA1 DB ?
DA2 DB ?
DATA ENDS
……
LEA SI,ADR
MOV CX,COUNT
DON1:MOV AX,[SI]
TEST AX,0001H
汇编语言练习题:
一、项选择题
15.执行CALL FAR PTR SUB1指令后,在堆栈区域中应()
A.压入4个字节的内容B.弹出4个字节的内容
C.压入2个字节的内容D.弹出2个字节的内容
16.ASSUME伪指令说明了汇编程序所定义段与段寄存器的对应关系,它只影响()的设定。
A.源程序B.目标程序C.汇编程序D.连接程序
A.4 B.3 C.8 D.12
19.设有数据定义如下:
WORD-VAR DW 1,2,3,4
请问指令:ADD AL,TYPE WORD-VAR
相当于完成下面等同功能是指令是()
A.ADD AL,1 B.ADD AL,2 C.ADD AL,3 D.ADD AL,4
20.设有数据定义如下:
DATABUF DW 100 DUP(?)
28.子程序是通过( )来定义的
A、CALL-RET B、PROC-ENDP C、SUB-PROC D、PROC-RET
二、填空题
7.标号和变量均有三种属性,它们是______、______和______属性
8.设ARRAY DW 64H DUP(100H)那么:
LENGTH ARRAY的值是_______
7.请判断下列两条指令是否正确,如有错请给予改正;并分别指出两条指令的功能。
(1)MOV AL,[BX]
(2)MOV [BX],0AH
8、已知CS=2500H,IP=0110H,SS=3000H,SP=0050H,30050H=1234H,30052H=2000H,3054H=1100H,执行RET2指令后(段间返回),请问:
12、在DOS功能调用中,01H号功能调用表示(),02H号功能调用表示()
三、简答题
5.请解释下列两条指令的区别。
SHR AX,写出适当的指示性语句:
(1)将56H,78H,0B3H,100存放在定义为字节变量ARRAY的存储单元中。
(2)将字数据2965H,45H,2965,0A6H存放在定义为字节变量DATA的存储单元中。
JZ DON2
INC BL
JMP DON3
DON2:INC BH
22、下面指令序列执行后,正确的结果是
MOV AL,0FEH
ADD AL,AL
ADC AL,AL
A、L=0F8H B、AL=0F8H C、AL=0F9H D、AL=0F9H
CF=1 CF=0 CF=0 CF=1
23、下面指令序列执行后完成的运算,正确的算术表达式应是
MOV AL,BYTE PTR X
17.设有一程序段定义如下:
ORG 0024H
AR1 DW4,5,$+4
┆
MOV AX,AR1+4
执行后AX中的正确内容是()
A.0028H B.0032H C.002AH D.002CH
18.现用数据定义伪指令定义数据:
BUF DB 4 DUP(0,2 DUP(1,0));
问定义后,存储单元中有数据0100H的字单元个数是()
ADC AL,DA2+1
DAA
MOV DA3+1,AL
HLT
请回答:(1)该程序完成的功能是什么?
(2)程序执行后DA3=?DA3+1=?
10、现有程序段如下:
MOV AL,28H
MOV AH,0
SAL AX,1
MOV BX,AX
SAL AX,1
SAL AX,1
ADD AX,BX
请回答:(1)该程序段完成的功能是什么?
(1)堆栈内容被弹出后SP的值是多少
(2)返回原断点的物理地址是多少
四、程序分析
9、现有程序段如下:
D-SEG SEGMENT
DA1 DB 12H,34H
DA2 DB 35H,57H
DA3 DB 0,0
D-SEG ENDS
……
MOV AL,DA1
ADD AL,DA2
DAA
MOV DA3,AL
MOV AL,DA1+1
请问指令:MOV CX,LENGTH DATABUF
相当于完成下面等同功能的指令是()
A.MOV CX,00C8H B.MOV CX,200H
C.MOV CX,0064H D.MOV CX,100H
21、设AX=0A8H,CL=3,CF=1,执行RCL AX,CL指令后,AX=?
A、45H B、46H C、47H D、0C5H