《汇编语言》在线作业二
- 格式:doc
- 大小:300.00 KB
- 文档页数:5
1. 下面指令序列测试H中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为()。
TST H,01H _________K1. JN. JZ. JS. J正确答案:满分:4 分2. 完成同指令XHG X,X相同功能的指令或指令序列是()。
. MOV X,X. MOV X,X. PUSH X POP X. MOV X,X MOV X,X MOV X,X正确答案:满分:4 分3. 使用OS系统功能调用时,使用的软中断指令是(). INT 21. INT 10H. INT 16H. INT 21H正确答案:满分:4 分4. 中断服务程序入口地址占用()个字节. 4. 6. 2. 1正确答案:满分:4 分5. 条件转移指令JN的测试条件为( ).. ZF=0. F=0. ZF=1. F=1正确答案:满分:4 分6. 完成将累加器L清零,并使进位标志F清零,下面错误的指令是()。
. MOV L,00H. N L,00H. XOR L,L. SU L,L正确答案:满分:4 分7. 测试L寄存器内容是否与数据4FH相等,若相等则转NXT处执行,可实现的方法是()。
. TST L,4FHJZ NXT. XOR L,4FHJZ NXT. N L,4FHJZ NXT. OR L,4FHJZ NXT正确答案:满分:4 分8. MOV H,1000[SI],该指令中源操作数采用的寻址方式是( ). 立即. 直接. 寄存器相对. 寄存器间接正确答案:满分:4 分9. 下面指令执行后,变量中的内容是()。
W W205H 0FH : MOV L,YT PTR W SU ,L. 0H. 0FH. 0F5H. 00H正确答案:满分:4 分10. 在串操作指令前使用重复前缀指令RP,终止串的重复操作条件是(). X=0且ZF=0. X=0且ZF=1. X=0或ZF=0. X=0或ZF=1正确答案:满分:4 分11. T SGMNT T1 W 0102H,0304H,0506H T2 02H,03H,04H : MOV X,S:[0006H] N X,0FFH &nsp;OR H,[X] 上述指令序列运行后,X的内容是()。
作业报告二一、题目理解下面的程序,完成对数据段中数据的从小到大排序,并输出。
输出功能块label2已给出,通过CALL和RET实现调用。
DATAS SEGMENTDB2,5,6,8,3,7,4,9,2,6,1DATAS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATASSTART:MOV AX,DATASMOV DS,AX;输出原来排序mov cx, 9mov bx,0call label2;把DATAS中的数从小到大排序;换行mov dl, 10MOV AH,6INT 21Hmov dl, 13MOV AH,6INT 21H;输出新排序mov cx, 9mov bx,0call label2MOV AH,4CHINT 21H;输出排序子程序label2:mov dl, [bx]add dl, 30HMOV AH,6INT 21HINC BXloop label2retCODES ENDSEND START 二、分析2.外层循环次数用PUSH CX先保存三、主要代码DATAS SEGMENTDB2,5,6,8,3,7,4,9,2,6,1;此处输入数据段代码DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS START:MOV AX,DATASMOV DS,AX;输出原来排序mov cx, 10mov bx,0call label2;把DATAS中的数从小到大排序MOV SI,0call BUBBLE;换行mov dl, 10MOV AH,6INT 21Hmov dl, 13MOV AH,6INT 21H;输出新排序mov cx, 10mov bx,0call label2;此处输入代码段代码MOV AH,4CHINT 21H;输出排序子程序label2:mov dl, [bx]add dl, 30HINT 21HINC BXloop label2retBUBBLE:L1: PUSH CXL2: MOV AX,[SI]CMP AX,[SI+1]jna NEXTXCHG AX,[SI+1]MOV [SI],AXADD SI,1NEXT:ADD SI,1LOOP L2POP CXLOOP L1retCODES ENDSEND START四、执行结果如图五、总结1.出现错误原因是排序代码段BUBBLE写在了“CODES ENDS END START”之后。
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. 确定下列那些数据在汇编语言中是非法的()。
一、单项选择题(只有一个选项正确,共10道小题)1. 若PORT_VAL<5,则执行指令MOV BX,((PORT_VAL LT 5) AND 20) OR ((PORT_VAL GE 5) AND30)后BX的内容是:()。
(A) 20(B) 30(C) 5(D) 10未选择 [错误]正确答案:A解答参考:2. 假设(AL)=,MOV CL,4SHL AL,CL执行上述指令后CF和AL的内容是()。
(A) AF=1,(AL)=00001001(B) AF=0,(AL)=00001001(C) AF=1,(AL)=00100000(D) AF=0,(AL)=00100000你选择的答案:未选择 [错误]正确答案:C解答参考:3. 下面指令序列测试BH中的数是否为奇数,若为奇数则转移至K1处,横线处的指令应为()。
TEST BH,01H_____K1(A) JNE(B) JZ(C) JS(D) JC你选择的答案:未选择 [错误]正确答案:A解答参考:4. 已知标号NEXT与指令MOV AX,TYPE NEXT在同一个段内,则AX的值为()。
(A) 0(B) 1(C) 2(D) -1你选择的答案:未选择 [错误]正确答案:B解答参考:5. DATA SEGMENTBUF DB 1,2,3,4,5COUNT EQU -BUFDATA ENDS在以上数据段中COUNT的值为( )(A) 3(B) 5(C) 4(D) 6正确答案:B解答参考:6. 下列是8位二进制数的补码,其中真值最大的是()。
(A)(B)(C) 00000000(D) 00000001你选择的答案:未选择 [错误]正确答案:D解答参考:7. 16位有符号数的补码所表示的十进制数的范围是()。
(A) -32767~+32768(B) -32768~+32767(C) -65535~+65536(D) 0~65535你选择的答案:未选择 [错误]正确答案:B解答参考:8. 下面的XCHG指令中,语法正确的是( )。
17春16秋《汇编语言》2一、单选(共8 道,共100 分。
)1. 关于字除法指令错误的说法是( ) 。
A. 有符号除法的商和余数都是补码表示的数B. 商在AX寄存器中,余数在DX寄存器中C. 16位被除数AX与8位源操作数相除D. 32位被除数与DX:AX与16位源操作数相除标准解:2. 要实现段间转移,下列说法正确的是( ) 。
A. 转移地址不能用存储单元给出B. 既要改变IP又要改变CSC. 标号的偏移地址送入CSD. 标号的属性为NEAR型标准解:3. 指令MOV AX,ES:[BX][SI]源操作数的物理地址是( ) 。
A. SS×16+BX+SIB. ES×16+BX+SIC. CS×16+BX+SID. DS×16+BX+SI标准解:4. 条件转移指令JNE的测试条件是( ) 。
A. CF=0B. ZF=0C. CF=1D. ZF=1标准解:5. 设有一个双精度数12A034B0H,将它存放在双字单元12000H,那么123002H中存放的是( ) 。
A. B0HB. A0HC. 34HD. 12H标准解:6. V AR是数据段中定义的变量,指令MOV AX,V AR源操作数的寻址方式是( ) 。
A. 相对寻址B. 立即寻址C. 寄存器寻址D. 直接寻址标准解:7. 在汇编语言源程序中,表达式的计算是由哪个完成的( ) 。
A. 程序执行时B. 汇编器C. 编程者D. 连接器标准解:8. 十进制数-100的8位二进制数的补码为( ) 。
A. 1100100B. 10011101C. 10011011D. 10011100标准解:。
北航《汇编语言》在线作业二
单选题判断题
一、单选题(共15 道试题,共60 分。
)
1. 下面不属于常用的数据定义伪指令的是()
A. DB
B. DY
C. DD
D. DQ
-----------------选择:B
2. REPZ CMPSW指令,重复执行的终止条件是()
A. CX=0或ZF=0
B. CX=0且ZF=0
C. CX=0或ZF=1
D. CX=0且ZF=1
-----------------选择:A
3. OR AL,AL是( )操作指令。
A. 异或
B. 加法
C. 右移
D. 逻辑或
-----------------选择:D
4. 堆栈指针SP的内容是
A. 栈顶单元内容
B. 栈顶单元地址
C. 栈低单元内容
D. 栈低单元地址
-----------------选择:B
5. 循环控制指令LoopNZ/LoopNE控制循环继续执行的条件是()
A. CX≠0且ZF=1
B. CX≠0且ZF=0
C. CX≠0或ZF=1
D. CX≠0或ZF=0
-----------------选择:B
6. 把汇编源程序变成代码程序的过程是()
A. 编译
B. 汇编
C. 编辑
D. 链接
-----------------选择:B
7. 设AL=0AH,下列指令执行后能使AL=05H的是()。
北航《汇编语言》在线作业二一、单选题: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的是( )。
请同学及时保存作业,如您在20分钟内不作操作,系统将自动退出。
《汇编语言》在线作业二
一、单选题(共 20 道试题,共 100 分。
)
V
1. 在多重循环程序中,每次通过外层循环进入内层循环时,其内层循环的初始条件(B )。
A. 不必考虑
B. 必须重新设置
C. 必须置1
D. 须清0
满分:5 分
2. 伪指令是(C)规定的汇编说明符,它在源程序汇编时进行说明。
A. DEBUG
B. LINK
C. MASM
D. EDIT
满分:5 分
3. 下列描述正确的是(D)。
A. 在多重循环程序中,内层循环只能有一个
B. 在汇编语言程序设计中,二重循环程序之间的关系可以交错
C. 在汇编语言程序设计中,每次循环应返回到置初值部分之前
D. 在汇编语言程序设计中,每次循环应返回到置初值部分之后
满分:5 分
4. 下列指令会影响标志位的指令是(D)。
A. JMP L
B. JC L
C. MOV AL,L
D. SHL AL,1
满分:5 分
5. LINK命令执行后可以生成一个以(B)为扩展名的文件。
A. ASM
B. EXE
C. OBJ
D. COM
满分:5 分
6. 如果0100H单元存放条件转移指令的操作码,0101H单元存放条件转移指令的相对位移量
13H,那么转移后的指令的偏移地址为(C)。
A. 0102H
B. 0113H
C. 0115H
D. 00FEH
满分:5 分
7. 若DS=1000H,BX=2000H,(12000H)=56H,(12001H)=78H,AX=1000H,执行“ADD
AX,[BX]”指令后,AX=(A)。
A. 8856H
B. 6678H
C. 8800H
D. 6600H
满分:5 分
8. 下列叙述正确的是(A )。
A. 执行一条段间调用指令,先将CS、IP的内容压栈,然后将目的地址送CS和IP。
B. 执行一条段间调用指令,先将目的地址送CS和IP,然后将CS、IP的内容压栈。
C. 执行一条段间调用指令,先将CS、IP的内容压栈,然后SP指针加2。
D. 执行一条段间调用指令,先将CS、IP的内容压栈,然后SP指针减2。
满分:5 分
9. 如果“JA P”指令的操作码放在0050H, 该指令的位移量为34H,执行完此条指令转移到取下
一条指令的偏移地址为(C)
A. 0082H
B. 0084H
C. 0086H
D. 0088H
满分:5 分
10. 当“CMP AX,BX”比较时,执行“JG L”指令后转移列L,则表明(A)。
A. AX>BX
B. AX=BX
C. AX<BX
D. AX≥BX
满分:5 分
11. 子程序重定位可选在内存中的整个区域内,在进行程序设计时,子程序应采用(B)。
A. 绝对地址
B. 相对地址
C. 逻辑地址
D. 物理地址
满分:5 分
12. 一个段最大可定义(B )字节。
A. 1M
B. 64K
C. 32K
D. 16
满分:5 分
13. 在循环程序设计过程中,将循环的次数送CX寄存器的操作是在(A)完成的。
A. 置初值部分
B. 循环工作部分
C. 循环修改部分
D. 循环控制部分
满分:5 分
14. 若定义“C DD 2,4”,则该伪指令分配(D )个字节单元。
A. 2
B. 4
C. 6
D. 8
满分:5 分
15. 宏指令与子程序相比,在多次调用时,宏指令调用的目标程序长度比子程序调用的(B )。
A. 相同
B. 长
C. 短
D. 不定
满分:5 分
16. 用一条条件转移指令一次可实现(A)个分支。
A. 2
B. 3
C. 4
D. 多
满分:5 分
17. 若定义“B DW 1,2,10 DUP(0)”,则该伪指令分配(D)字节单元。
A. 10
B. 20
C. 22
D. 24
满分:5 分
18. 循环指令“LOOP”的操作是(B )。
A. CX先减1,然后再判断CX,若CX=0则转,否则继续执行
B. CX先减1,然后再判断CX,若CX≠0则转,否则继续执行
C. 先判断CX,若CX≠0则CX-1后转,否则继续执行
D. 先判断CX,若CX≠0则转,否则CX-1后继续执行
满分:5 分
19. 下列叙述中属于子程序嵌套的是(D )。
A. 主程序调用子程序1
B. 主程序调用子程序2
C. 主程序调用子程序3
D. 子程序1调用子程序2
满分:5 分
20. 若要求一个段的起始位置能被256整除的单元开始,在定位方式选项中应选(D)。
A. BYTE
B. WORD
C. PARA
D. PAGE
满分:5 分。