汇编语言期末复习题库
- 格式:doc
- 大小:42.50 KB
- 文档页数:9
汇编语言期末试题及答案一、选择题(每题2分,共20分)1. 以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. CMPC. JMPD. CALL答案:A2. 在汇编语言中,以下哪个指令用于实现无条件跳转?A. JZB. JCC. JMPD. JS答案:C3. 假设当前数据段的偏移地址是1000H,那么以下哪个地址是有效的内存地址?A. 1000HB. 2000HC. 3000HD. 4000H答案:B4. 在汇编语言中,以下哪个寄存器用于存储当前指令的偏移地址?A. AXB. BXC. IP答案:C5. 假设AL寄存器的值为0F6H,执行指令AND AL, 0F0H后,AL寄存器的值是多少?A. 0F0HB. 0F6HC. 0F0HD. 00H答案:D6. 以下哪个指令用于将一个字节的值从寄存器移动到内存?A. MOVB. MOVSC. MOVZXD. MOVSX答案:A7. 在汇编语言中,以下哪个指令用于实现循环操作?A. LOOPB. JZC. JMPD. CALL答案:A8. 假设CS寄存器的值为1000H,IP寄存器的值为0100H,那么当前指令的物理地址是多少?A. 10000HB. 10100HC. 11000HD. 11100H9. 在汇编语言中,以下哪个指令用于实现子程序的调用?A. JMPB. CALLC. RETD. INT答案:B10. 假设DX寄存器的值为1234H,执行指令SHL DX, 1后,DX寄存器的值是多少?A. 2468HB. 1234HC. 0468HD. 0234H答案:A二、填空题(每题2分,共20分)1. 汇编语言中,指令MOV AX, [BX]表示将_________的值移动到AX寄存器中。
答案:BX寄存器指向的内存地址2. 汇编语言中,指令PUSH AX表示将AX寄存器的值压入_________。
答案:堆栈3. 汇编语言中,指令POP BX表示将堆栈顶的值弹出到_________寄存器中。
汇编语言期末试卷一、单项选择题(每小题1分,共10分)1、十进制数269变换为十六进制数是(C)。
(A)10B (B)10C (C)10D (D)10E2、指令mov 100[si][bp],ax目标操作数的隐含段为(B)。
(A)数据段(B)堆栈段(C)代码段(D)附加段3、以下语句汇编后,CENTH的值是(C)buf1 dw 8,19buf2 db 6,'abc$',10 dup('5')CENTH equ buf2—buf1A.14B.8C.4D.174、若栈顶物理地址为20100H,当执行完指令PUSH AX后,栈顶的物理地址为(D)。
(A)20102H (B)20101H (C)200FFH (D)200FEH5、执行下列指令后,正确的结果是(B )。
MOV AL,100MOV BL,-2(A)AL=100H,BL=02H (B)AL=64H,BL=0FEH(C)AL=64H,BL=82H (D)AL=100H,BL=0FEH6、假定AX的内容为-32768,在执行了指令NEG AH后,标志位(SF,OF)为(D )。
(A)0,0 (B)0,1 (C)1,0 (D)1,17、设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为(B)。
(A)OF=1,CF=0 (B)OF=1,CF=1 (C)OF=0,CF=0 (D)OF=0,CF=18、当A≥B时转移的条件转移指令为(A,B为带符号数)(D )。
(A)JA (B)JAE (C)JG (D)JGE9、完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是(A)。
(A)MOV AL,00H (B)AND AL,00H(C)XOR AL,AL (D)SUB AL,AL10、已知CALL BX执行前SP=100H,执行后SP的内容为(D )。
(A)100H (B)102H (C)98H (D)0FEH二、填空题(每空1分,共10分)1、(00101011)B+(13)D+(1B)H=(123 )Q2、IBM PC机内存容量最大为(1M )B,要寻找这样大的空间,需要()根地址线。
汇编语言程序设计复习题一、单项选择题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分,共20分)1.指令JMP FAR PTR DONE属于参考答案为:CA.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址[解析]略2.下列叙述正确的是参考答案为:CA.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMPS指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CMP指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/JNL 指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/JNB 指令[解析]对于无符号数和有符号数的比较都采用CMP指令;CMPS指令是串比较指令;对两个无符号数的条件转移指令应是:JAE、JNB、JBE、JNA;对两个有符号数的条件转移指令应是:JGE、JNL、JLE、JNG。
3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是参考答案为:CA.12CSBHB.12B6BHC.12C59HD.12BFEH[解析]末字与首字相隔(128-1=)127个字,且每个字占用2个字节,因此末字单元的物理地址应为:首字单元的物理地址+(128-1)×2即 12ABH×10H+00ABH+(128-1)×2=12C59H。
4.在下列指令的表示中,不正确的是参考答案为:CA.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL[解析]当只有一个存储器操作数时,这个操作数的类型不明确,例如选项C中的[BX],没有明确的说明访问该存储单元的类型,此时存储器操作数就必须需用类型说明,如DEC BYTE PTR [BX] 或 DEC WORD PTR [BX]但是在题目的选项C中,没有指出存储器操作数类型,所以该指令是不正确的;而其它选项中的指令均是正确的。
汇编语言期末考试试题一、选择题(每题2分,共20分)1. 在汇编语言中,以下哪个指令用于将立即数或常量值送入寄存器?A. MOVB. ADDC. SUBD. MUL2. 汇编语言中的指令MOV AX, BX等价于以下哪个高级语言语句?A. AX = BXB. AX + BXC. AX - BXD. AX * BX3. 以下哪个指令用于将内存中的数据传送到寄存器?A. MOV AX, [BX]B. MOV [BX], AXC. ADD AX, [BX]D. SUB AX, [BX]4. 在汇编语言中,哪个指令用于实现无符号数的比较?A. CMPB. TESTC. JZD. JE5. 下列哪个指令用于实现条件跳转?A. JMPC. RETD. INT6. 汇编语言中的循环结构通常使用哪个指令来实现?A. LOOPB. JUMPC. JZD. JE7. 在汇编语言中,哪个指令用于实现子程序的调用?A. MOVB. CALLC. RETD. INT8. 汇编语言中的段寄存器CS用于存储什么?A. 数据B. 指令C. 代码段地址D. 堆栈地址9. 汇编语言中的指令PUSH AX和POP AX分别用于什么?A. 将AX寄存器的内容压入堆栈B. 将AX寄存器的内容弹出堆栈C. 将AX寄存器的内容加到堆栈D. 将AX寄存器的内容减去堆栈10. 在汇编语言中,哪个指令用于实现中断调用?A. INTB. IRETD. STI二、简答题(每题5分,共10分)1. 解释汇编语言中的立即寻址方式和直接寻址方式的区别。
2. 描述汇编语言中如何实现一个简单的加法程序。
三、编程题(每题15分,共30分)1. 编写一个汇编程序,实现将AX寄存器中的值与BX寄存器中的值相加,并将结果存储在CX寄存器中。
2. 设计一个汇编程序,实现从键盘接收一个字符,然后将其转换为ASCII码对应的十进制数值,并显示在屏幕上。
四、综合应用题(每题40分)编写一个汇编程序,实现一个简单的文本编辑器功能。
汇编语言复习题附答案一、选择题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的状态寄存器中的条件码标志来决定是否跳转到指定的标签处执行。
汇编期末考试题及答案试题:汇编期末考试题一、选择题(每题2分,共20分)1. 汇编语言中,用于定义常量的指令是:A. EQUB. DBC. DWD. DD2. 下列哪个指令用于将立即数送入累加器:A. MOV AX, 5B. MOV AL, 5C. MOV [100], 5D. MOV AX, [100]3. 在汇编语言中,哪个指令用于将数据从内存传送到寄存器:A. MOV AX, [BX]B. MOV [BX], AXC. MOV AX, BXD. MOV BX, AX4. 汇编语言中的循环结构通常使用以下哪个指令来实现:A. LOOPB. JUMPC. CMPD. RET5. 以下哪个指令用于将寄存器的内容清除为0:A. XOR AX, AXB. MOV AX, 0C. CLR AXD. SET AX, 06. 在汇编语言中,用于计算两个寄存器内容的和并存储结果的指令是:A. ADD AX, BXB. MOV AX, BXC. SUB AX, BXD. CMP AX, BX7. 下列哪个指令用于设置中断向量表:A. MOV AX, [100H]B. MOV [100H], AXC. MOV AX, @DATAD. MOV @DATA, AX8. 在汇编语言中,哪个指令用于无条件跳转:A. JMPB. JEC. JNED. JZ9. 汇编语言中,用于将寄存器的内容与立即数进行比较的指令是:A. CMP AX, BXB. MOV AX, BXC. ADD AX, BXD. SUB AX, BX10. 下列哪个指令用于将累加器的内容输出到屏幕上:A. OUT 0E0H, ALB. MOV AL, 0E0HC. MOV DX, 0E0HD. MOV AX, 0E0H二、简答题(每题5分,共20分)1. 解释汇编语言中的段寄存器的作用。
2. 描述汇编语言中堆栈的工作原理。
3. 解释汇编语言中的宏定义和条件编译指令。
汇编语言期末试题及答案A1. 选择题(共10题,每题2分)1) 汇编语言中,以下哪个寄存器用于存放返回地址?A. AXB. CXC. DXD. IP答案:D2) 汇编语言中,以下哪个指令用于将标志寄存器的值传送到累加器中?A. MOVB. PUSHFC. POPFD. LAHF答案:D3) 汇编语言中,以下哪个指令用于将字节BCH扩展成字形式?A. CBWB. CWDC. CDQD. CQO答案:A4) 汇编语言中,以下哪个指令用于将字节AL扩展成字形式?A. MOVSXB. MOVZXC. LEAD. LDS答案:B5) 汇编语言中,以下哪个指令用于将字节AL和字节BL的逻辑与结果存放在字节AL中?A. AND AL, BLB. OR AL, BLC. XOR AL, BLD. NOT AL答案:A6) 汇编语言中,以下哪个指令用于将字节AL和字节BL的逻辑或结果存放在字节AL中?A. AND AL, BLC. XOR AL, BLD. NOT AL答案:B7) 汇编语言中,以下哪个指令用于将字节AL和字节BL的逻辑异或结果存放在字节AL中?A. AND AL, BLB. OR AL, BLC. XOR AL, BLD. NOT AL答案:C8) 汇编语言中,以下哪个指令用于将字节AL的补码存放在字节AL中?A. NEG ALB. NOT ALC. INC ALD. DEC AL答案:A9) 汇编语言中,以下哪个指令将字节AL左移一位?B. ROL AL, 1C. SAL AL, 1D. SAR AL, 1答案:A10) 汇编语言中,以下哪个指令将字节AL右移一位?A. SHR AL, 1B. ROR AL, 1C. SHL AL, 1D. SAR AL, 1答案:A2. 简答题(共5题,每题4分)1) 解释汇编语言中的“段”和“偏移”的概念,并说明它们的作用。
答案:在汇编语言中,段(Segment)和偏移(Offset)是用来定位内存中的数据和指令的。
汇编语言试题及答案一、选择题1. 汇编语言是一种:A. 高级语言B. 低级语言C. 机器语言D. 标记语言答案:B2. 汇编程序的编译过程包括:A. 预处理、编译、链接B. 编译、链接、运行C. 编译、预处理、链接D. 链接、编译、预处理答案:A3. 下列哪项是汇编语言的指令:A. MOV AX, BXB. int main()C. print "Hello, World!"D. System.out.println("Hello, World!");答案:A二、填空题4. 在汇编语言中,指令______用于将数据从内存传送到寄存器。
答案:MOV5. 汇编语言中的______指令用于实现无条件跳转。
答案:JMP6. 汇编语言中的______指令用于实现条件跳转。
答案:JZ 或 JE(零标志跳转)三、简答题7. 简述汇编语言的特点。
答案:汇编语言是一种低级语言,它非常接近机器语言,通常用于编写硬件操作和系统软件。
其特点是执行效率高,但编程复杂度高,可读性和可移植性较差。
8. 汇编语言与机器语言有何区别?答案:汇编语言是一种符号化的机器语言,它使用助记符代替机器语言中的二进制代码,更易于人类理解和编写。
机器语言则是计算机硬件直接执行的指令集,通常以二进制形式存在。
四、编程题9. 编写一段汇编语言程序,实现将AX寄存器的值加1。
答案:INC AX10. 编写一段汇编语言程序,实现将内存地址[100]处的值与BX寄存器的值相加,并将结果存回内存地址[100]。
答案:MOV AX, [100]ADD AX, BXMOV [100], AX五、论述题11. 论述汇编语言在现代计算机系统中的作用和局限性。
答案:汇编语言在现代计算机系统中主要用于系统底层开发、硬件驱动编写、嵌入式系统编程等领域。
其作用在于能够直接控制硬件,实现高效的资源利用。
然而,由于其复杂度高、可读性差、可移植性低,它在高级应用开发中的使用受到限制。
汇编语言期末考试试题汇编语言期末考试试题汇编语言作为计算机科学专业的一门重要课程,对于学生来说是一项必修课程。
期末考试是对学生所学知识的综合考核,下面将为大家提供一些汇编语言期末考试试题,希望对大家复习和备考有所帮助。
一、选择题1. 汇编语言是一种低级语言,它与高级语言相比的主要优势是:A. 代码简洁易懂B. 可以直接操作硬件C. 可以实现更高的性能D. 更易于调试和维护2. 在汇编语言中,用于表示寄存器的符号是:A. #B. $C. @D. %3. 在8086汇编语言中,用于表示立即数的符号是:A. #B. $C. @D. %4. 在汇编语言中,用于表示寄存器间接寻址的符号是:A. []B. ()C. {}D. <>5. 在汇编语言中,用于表示寄存器的通用寄存器是:A. AXB. BXC. CXD. DX二、填空题1. 8086汇编语言中,用于将立即数存储到寄存器中的指令是________。
2. JMP指令用于实现无条件跳转,其操作码是________。
3. MOV指令用于将数据从源操作数传送到目的操作数,其操作码是________。
4. 在8086汇编语言中,用于将数据存储到内存中的指令是________。
5. 在汇编语言中,用于表示标号的符号是________。
三、编程题请编写一个8086汇编语言程序,实现将一个数组中的所有元素相加,并将结果存储在指定的寄存器中。
解答:```DATA SEGMENTARR DB 1, 2, 3, 4, 5LEN EQU $-ARRSUM DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART:MOV AX, DATAMOV DS, AXMOV CX, LENMOV SI, 0MOV AL, 0ADD_LOOP:ADD AL, ARR[SI]INC SILOOP ADD_LOOPMOV SUM, ALMOV AH, 4CHINT 21HCODE ENDSEND START```本程序首先定义了一个数据段,其中包括一个数组ARR和数组长度LEN,以及一个用于存储结果的寄存器SUM。
汇编语言a期末考试试题及答案汇编语言A期末考试试题及答案一、选择题(每题2分,共20分)1. 以下哪个指令用于将立即数加载到寄存器中?A. MOVB. ADDC. SUBD. JMP答案:A2. 在汇编语言中,哪个指令用于将一个寄存器的内容复制到另一个寄存器?A. MOVB. PUSHC. POPD. CMP答案:A3. 假设CS:IP指向当前执行的指令,那么DS:SI指向的是?A. 源地址B. 目的地址C. 下一条指令D. 前一条指令答案:A4. 以下哪个指令用于将一个字节的值从内存加载到寄存器?A. MOVC. MOVZXD. MOVSX答案:A5. 在汇编语言中,哪个指令用于比较两个寄存器的值?A. CMPB. TESTC. ANDD. OR答案:A6. 假设AL寄存器的值为0x0F,执行指令SHL AL, 1后,AL的值是多少?A. 0x0EB. 0x1EC. 0x07D. 0x1F答案:B7. 在汇编语言中,哪个指令用于无条件跳转到指定的地址?A. CALLB. JMPC. RETD. INT答案:B8. 以下哪个指令用于将寄存器的内容推送到堆栈中?A. PUSHB. POPC. CALL答案:A9. 假设CF标志位为1,执行指令RCL AX, 1后,AX的值会如何变化?A. 左移一位B. 右移一位C. 循环左移一位D. 循环右移一位答案:C10. 在汇编语言中,哪个指令用于将一个字节的值从寄存器移动到内存?A. MOVB. MOVSC. MOVZXD. MOVSX答案:A二、填空题(每题4分,共20分)1. 在汇编语言中,指令MOV AX, 1234H的结果是将____值加载到AX寄存器中。
答案:1234H2. 指令PUSH AX的作用是将AX寄存器的内容压入到____中。
答案:堆栈3. 指令AND AX, BX的结果是将AX和BX寄存器的值进行____操作。
答案:逻辑与4. 指令JMP 0100H的作用是跳转到内存地址____执行指令。
选择题1. 已知78, -83则[]补=()A.0F5HB.0A1HC.0D.65H2. , [] 源操作数的寻址方式是()A.基址寻址B.立即寻址C.变址寻址D.基址变址寻址3. 指令 , [],若35000H,那么物理地址为()A.17500HB.16500HC.14500HD.13500H4. 下列四组寄存器中,在段内寻址时可以提供偏移地址的寄存器组是(),,,,,,,,,,,,5. 当执行指令,后,若的内容为20H,设置的奇偶标志位=1,下面的叙述正确的是()A. 表示结果中含1的个数为偶数B. 表示结果中含1的个数为奇数C. 表示该数为偶数D. 表示结果中低八位含1的个数为偶数6. 下列传送指令中,有语法错误的指令是()。
,,,,7. ,3210H执行上述指令序理后,寄存器的值是()。
A.3211HB. 320C.320D. 3212H8. 设()=20H,执行指令后,正确的结果是()A.()=20H 1B.()=20H 0C.()=0E0H 0D.()=0E0H 19. 执行下面指令序列后,结果是(),82H082H 8082H 0082H 0F82H10. 串操作指令中,目标串操作数的段地址一定在()寄存器中。
11. , [][]的源操作数的寻址方式是()。
A.变址寻址B.基址寻址C.直接寻址D.基址变址寻址12. 指令 [][],若1300H,7200H,5400H,0500H,4000H,那么物理地址为()。
A.6F300HB.77800HC.59800HD.78700H13. 在8086中,存储器是分段组织,每段最大长度是()。
A.16B.32C.64D.12814. 是数据段中定义的变量,指令,源操作数的寻址方式是()。
A.立即寻址B.直接寻址C.相对寻址D.寄存器寻址15. 执行下面指令序列后,结果是()。
,82H082H 8082H 0082H 0F82H16. 在串指令中,重复次数一定放在()寄存器中。
汇编语言期末复习题库(汇编)一、填空题1.中央处理器包括运算器、控制器、寄存器组。
2.物理地址是指实际的20 位主存单元地址,每个存储单元对应唯一的物理地址。
3.用二进制代码书写指令和程序的语言,称为机器语言。
4.计算机中的指令由操作码和操作数两部分组成。
5.把A和B两个寄存器的内容进行异或运算,若运算结果是0 ,那么A、B寄存器的内容必定相同。
6.AL,BL中存放着压缩的BCD数,(AL)=18H,(BL)=47H,执行如下两条指令ADD AL,BL 和DAA后,(AL)=65H 。
7.当指令“SUB AX,BX”执行后,CF=1,说明最高有效位有借位;对有符号数,说明操作结果溢出。
8.FLAG状态标志寄存器中,AF为辅助进位标志,CF为进位标志,SF为符号标志,ZF为零标志,OF为溢出标志,PF为奇偶性标志。
9.指出下列指令源操作数的寻址方式:MOV AX,ARRAY[SI] 变址寻址MOV AX,ES:[BX] 寄存器间接寻址MOV AX,[200H] 直接寻址MOV AX,[BX+DI] 基址变址寻址MOV AX,BX 寄存器寻址MOV AX,1200H 立即数寻址MOV AX,20[BX+SI]基址变址寻址MOV AX,[DI+20] 变址寻址10.现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=0B7H,(21023H)=65H,下列指令执行后填入AX寄存器的内容:(1)MOV AX,1200H;(AX)= 1200H(2)MOV AX,BX;(AX)=0100H(3)MOV AX,[1200H];(AX)= 4C2AH(4)MOV AX,[BX];(AX)= 3412H(5)MOV AX,1100[BX];(AX)= 4C2AH(6)MOV AX,[BX][SI];(AX)= 7856H(7)MOV AX,1100[BX][SI];(AX)= 65B7H11.已知‘A’的ASCII是41H,那么‘E’的ASCII是45H 。
汇编语言期末复习题一、单项选择题1.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区第一个字单元的物理地址是()。
A.12B5BH B.12B6BH C.12C59H D.12BFEH2.在IN AL,PORT指令中,PORT称为()。
A.立即数B.有效地址 C.端口地址 D.寄存器名3.在下列指令的中,不能实现把AX寄存器内容清零的指令是()。
A.SUB AX,AX B.XOR AX,AXC.OR AX,0000H D.AND AX,0000H4.条件转移指令JNE的测试条件为()。
A.ZF=0B.CF=0C.ZF=1D.CF=15.8086CPU在基址加变址的寻址方式中,变址寄存器可以为()。
A.BX或CX B.CX或SIC.DX或SI D.SI或DI6.设(AX)=1000H,NEG AXNOT AX执行上述两条指令后,正确的结果是()。
A.(AX)=1001H B.(AX)=0FFFH;C.(AX)=1000H D.(AX)=0111H。
7.串指令中的目的操作数地址一定是由()提供。
A.ES:[DI]B.SS:[BP]C.DS:[SI]D.CS:[IP]8.将DX的内容除以2,正确的指令是()。
A.DIV 2 B.DIV DX,2C.SAR DX,1D.SHL DX,19.用户为了解决自己的问题,用汇编语言所编写的程序,称为()。
A.目标程序B.汇编语言源程序C.可执行程序D.汇编程序10.用一条指令仅实现将AX←BX+SI的方法是()。
A.XCHG AX,[BX][SI]B.MOV AX,[BX+SI]C.LEA AX,BX[SI]D.LEA AX,[BX][SI]11.设SP初值为2000H,执行指令“PUSH AX”后,SP的值是()。
A.1FFFH B.1998H C.1FFEH D.2002H12.一个字为()位二进制数。
A.8位B.16位C.32位D.64位13. 下列四个寄存器中,可作为八位寄存器的是()。
1. 十进制数369转换成二进制数为(101110001)2,转换成十六进制数为(171)16.2. 计算机中的指令由(操作码)和(地址码)两部分组成。
3. 8086的地址总线有20根,寻址范围为(1M )字节。
4. 下一条将要执行的指令的地址存放在寄存器(指令指针寄存器)中。
5. 写出IBM PC机的三种子程序返回的指令(RET), (IRET),(IRETD)。
6. 汇编语言源程序需经过(汇编)程序汇编,(连接)程序连接才能生成可执行文件。
7. 存储器某单元的地址表示为2314H:4132H,则它的偏移地址=(4132),物理地址=(27272H)8. REP指令前缀与(字符串)指令配合使用。
9. 在显示器上查看和修改内存单元的内容可以使用DEBUG的(D )和(E )命令。
10. (AL)=BFH,要求屏蔽第0,1两位,则要执行指令(AND AL,3F );如果要求第0,1位变反,可使用指令(XOR AL,3F )11. 宏汇编适合于(程序短),(参数多)的子功能段使用;二、选择题1. 设字长N=16,有符号数7AE9H的补码表示为( D )A.9EA7H B. 76C4H C. 8417H D. 7AE9H2. 比较有符号数3260H与0B425H的大小关系为( C )A. 相等B. 小于C. 大于D. 不能比较3. 指令JMP WORD PTR [BX][DI]中转移的目标地址为( A )A.16 d x(DS)+(BX)+(DI) B.16d x(ES)+(BX)+(DI)C.16d x(SS)+(BX)+(DI) D.16d x(CS)+(BX)+(DI)4. 在指令MOV AX,[1000H]中,源操作数的寻址方式为( B )A.立即寻址 B.直接寻址 C.段内间接寻址 D.寄存器寻址5. 中断矢量表中存放的是( D )A. 中断类型号B. 断点地址C. 中断服务程序D. 中断服务程序入口地址6. 8086 的汇编语言指令系统中的条件转移指令可以使程序转移到( A )A. 段内的任何地方B. 距该指令偏移地址为-32768~+32767的地方C. 距该指令偏移地址为-128~+127的地方.D. 段外7. 能定义ASCII码字符串的数据定义语句有( D )A. DB,DW,DD,DQ,DTB. DB,DW,DDC. DB, DWD. DB;8. 若(AL)=87H,执行ADD AL,0F5H后,S,Z,C,O,P的状态为( C )A.SF=0,ZF=0,CF=1,OF=1,PF=0 B.SF=1,ZF=0,CF=1,OF=0,PF=1C.SF=0,ZF=0,CF=0,OF=1,PF=0 D.SF=1,ZF=0,CF=1,OF=1,PF=19. 比较指令CMP( D )A. 专用于有符号数比较B. 专用于无符号数比较C. 专用于串比较D. 不区分比较的对象是有符号数还是无符号数10. 数据传送指令对标志位的影响为( D )A.都不影响; B.都影响;C.除了SAHF,POPF,其它均不影响. D.除了控制标志位,其它均不影响三、判断题( )31. 段间调用的子程序必须由伪操作FAR说明为远过程。
汇编语言期末复习题DX:单项选择题 DU:多项选择题 TK:填空题 MC:名词解释v JD:简答题 CXFX:程序分析题 CXTK:程序填空题 BC:编程题第1章:基础知识1、在汇编语言程序的开发过程中使用宏功能的顺序是( C )。
DXA、宏定义,宏调用B、宏定义,宏展开C、宏定义,宏调用,宏展开D、宏定义,宏展开,宏调用2、汇编语言源程序中,每个语句由四项组成,如语句要完成一定功能,那么该语句中不可省略的项是( B )。
DXA、名字项B、操作项C、操作数项D、注释项3、可屏蔽中断就是它的请求是否被CPU响应要受( IF )的控制。
DX4、使用LINK连接命令,执行后可生成文件的扩展名为( EXE )。
DX5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在堆栈段中,段地址在 SS 寄存器中。
TK6、注释项用于说明程序段或是一条和几条指令的功能,一般用;(或分号) 表示注释的开始。
TK7、DOS系统功能调用方式为:(1)置入口参数;(2)中断程序编号送 AH 寄存器后执行INT 21H。
TK8、通常主程序和子程序间参数传送的方法有三种:用寄存器传递、用存储单元传递、用堆栈传递(顺序可调换)。
TK9、中断是CPU暂停当前程序的执行,转而执行处理紧急事务的程序,并在该事务处理完后能自动恢复执行原先程序的过程。
在此,称引起紧急事务的事件为中断源。
TK10、在字符串操作指令中,DS∶ SI 指向源串,ES∶ DI 指向目的串。
TK11、计算机系统通过接口与外围设备通信。
TK12、键盘I/O、显示I/O和打印I/O分别对应 16H 、 10H 和 17H 号中断。
TK13、字符显示模式缓冲区中的一个字对应于屏幕上的一个字符。
每个字的第一个字节为显示字符的 ASCII码,第二个字节为显示字符的属性。
TK14、简述上机运行汇编语言程序的过程。
JD答:首先打开未来汇编,新建一个空的汇编文件,后缀为.asm,然后输入汇编程序代码,保存,再编译成机器指令,然后连接成可执行文件,即exe文件,最后再运行。
期末汇编语言试题及答案(正文开始)第一节:多项选择题1. 汇编语言是一种_____。
A. 低级语言B. 高级语言C. 中级语言D. 汇编语言不属于编程语言范畴答案:A2. 汇编语言是一种_____。
A. 机器语言B. 人机交互语言C. 使用英文单词和符号的编程语言D. 汇编语言不属于编程语言范畴答案:C3. 在汇编语言中,用来表示无符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:A4. 汇编语言中,用来表示有符号整数的数据类型是_____。
A. BYTEB. WORDC. DWORDD. QWORD答案:B5. 汇编语言中的寻址方式包括_____。
A. 直接寻址B. 寄存器寻址C. 间接寻址D. 所有选项都是正确的答案:D第二节:填空题1. 汇编语言的基本单元是_____。
答案:指令(instruction)2. 汇编语言中,用来表示寄存器的通用约定是_____。
答案:以字母E或R作为前缀(例如:EAX、RBX)3. 汇编语言中,关键字和指令通常是以_____开头的。
答案:小写字母4. AL寄存器是_____位的寄存器。
答案:85. 汇编语言中,用来表示内存地址的数据类型是_____。
答案:PTR第三节:简答题1. 简述汇编语言的优点和缺点。
答:汇编语言的优点包括:- 直接操作底层硬件,可以实现高度的性能优化。
- 对机器指令的控制更加精细,可以实现特定的功能。
- 内存占用小,执行效率高。
汇编语言的缺点包括:- 学习曲线陡峭,需要掌握底层硬件架构和指令集。
- 编写和维护成本高,可读性差。
- 可移植性差,需要针对不同硬件平台编写不同版本的汇编代码。
2. 简述汇编语言指令的执行过程。
答:汇编语言指令的执行过程包括以下几个步骤:1. 从内存中读取指令:处理器根据程序计数器(Program Counter,PC)的值,从内存中读取指令。
2. 解析指令:处理器将读取到的指令解析成可执行的操作码和操作数。
《汇编语言》复习题库一、单项选择题1、在下列的选项中,能够组成计算机系统的是()。
A、硬件系统和软件系统B、CPU、存储器、输入/输出设备C、操作系统、各种语言D、系统软件和应用软件2、以8086/8088为CPU的微机内存最大容量为。
A、4MBB、1MBC、640KBD、64KB3、下面几个程序中不属于翻译程序的是。
A、汇编程序B、编译程序C、解释程序D、编辑程序4、在下列的选项中,能够组成计算机系统的是()。
A、硬件系统和软件系统B、CPU、存储器、输入/输出设备C、操作系统、各种语言D、系统软件和应用软件5、汇编语言属于()。
A、用户软件B、系统软件C、高级语言D、机器语言6、汇编语言源程序是()程序。
A、不可直接执行的B、可直接执行的C、经汇编程序汇编后就可执行的D、经连接后就可直接执行的7、8086/8088 CPU的寄存器组中,8位的寄存器共有()个。
A、4B、6C、8D、108、如果指令的运算结果为0,则()标志位为1。
A、SFB、OFC、ZFD、CF9、物理地址的形成过程是将段地址左移()位加偏移地址。
A、2B、3C、4D、510、如果某一存储单元的逻辑地址为236FH:1000H。
则物理地址为()。
A、1236FHB、336FHC、336F0HD、246F0H11、如果数据存放在DI的内容为偏移地址的数据段中,设DS=3624H,DI=2200H,则此存储单元的物理地址为()。
A、38440HB、58240HC、25624HD、58240H12、汇编语言属于()。
A、用户软件B、系统软件C、高级语言D、机器语言13、汇编语言源程序经汇编程序汇编后产生的文件的扩展名是()。
A、EXEB、OBJC、ASMD、LST14、中央处理器CPU是由()组成的。
A、运算器B、控制器C、寄存器组D、前三者15、8086/8088 CPU的寄存器组中,16位的寄存器共有()个。
A、10B、12C、13D、1416、在程序执行过程中,IP寄存器始终保存的是()。
一考试题型100分1.数制码制10分2.填空30分3.判断题:10分语句正确与否错误原因4.选择题15分5.阅读程序15分6.编写程序20分二.选择题59计算机基础8086寄存器寻址方式指令功能:算术,逻辑,移位,循环标志位:C,Z,S,O,P堆栈,SP汇编格式,变量,标号程序开发:EDIT ,MASM ML,LINK,DEBUG1、通常说计算机的内存为32M、64M或128M指的是:()A.RAM的容量B.ROM的容量C.RAM和ROM的容量D.硬盘的容量2.汇编语言的优点不包括_____。
A直接有效地控制硬件B生成的代码序列短小C运行速度快 D 编程容易3 十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
A.无符号十进制数136B.带符号十进制数-120C.压缩型BCD码十进制数88D. 8位二进制数-8的补码表示4 下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( )A、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS5可用作寄存器间接寻址或基址、变址寻址的地址寄存器,正确的是()。
A.AX,BX,CX,DXB.DS,ES,CS,SSC.SP,BP,IP,BXD.SI,DI,BP,BX6.当运行结果为0时,ZF=__________。
A 0B 1C 任意D 不影响7某次求和结果最高位为1,则SF=__________。
A 0B 1C 任意D不影响8设DS=5788H,偏移地址为94H,该字节的物理地址_____________。
A 57974HB 5883HC 57914HD 58ECH9. “MOV AX,[BP+DI]”指令从__________段取出数据送AX。
A CSB SSC DSD ES10.下面不能用于寄存器寻址的寄存器有()A. CSB. AX C IP D SI E. CL F. SP11存储器寻址方式在指令中给出操作数在内存中的地址,该地址是()A 逻辑地址 B.有效地址C偏移地址 D.物理地址 E.段地址12.堆栈的操作原则是_____________。
一、填空题1.中央处理器包括运算器、控制器、寄存器组。
2.物理地址是指实际的20 位主存单元地址,每个存储单元对应唯一的物理地址。
3.用二进制代码书写指令和程序的语言,称为机器语言。
4.计算机中的指令由操作码和操作数两部分组成。
5.把A和B两个寄存器的内容进行异或运算,若运算结果是0 ,那么A、B寄存器的内容必定相同。
6.AL,BL中存放着压缩的BCD数,(AL)=18H,(BL)=47H,执行如下两条指令ADD AL,BL 和DAA后,(AL)=65H 。
7.当指令“SUB AX,BX”执行后,CF=1,说明最高有效位有借位;对有符号数,说明操作结果溢出。
8.FLAG状态标志寄存器中,AF为辅助进位标志,CF为进位标志,SF为符号标志,ZF为零标志,OF为溢出标志,PF为奇偶性标志。
9.指出下列指令源操作数的寻址方式:MOV AX,ARRAY[SI] 变址寻址MOV AX,ES:[BX] 寄存器间接寻址MOV AX,[200H] 直接寻址MOV AX,[BX+DI] 基址变址寻址MOV AX,BX 寄存器寻址MOV AX,1200H 立即数寻址MOV AX,20[BX+SI]基址变址寻址MOV AX,[DI+20] 变址寻址10.现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=0B7H,(21023H)=65H,下列指令执行后填入AX寄存器的内容:(1)MOV AX,1200H;(AX)= 1200H(2)MOV AX,BX;(AX)=0100H(3)MOV AX,[1200H];(AX)= 4C2AH(4)MOV AX,[BX];(AX)= 3412H(5)MOV AX,1100[BX];(AX)= 4C2AH(6)MOV AX,[BX][SI];(AX)= 7856H(7)MOV AX,1100[BX][SI];(AX)= 65B7H11.已知‘A’的ASCII是41H,那么‘E’的ASCII是45H 。
12.Ends 是段定义结束伪指令,与Segment配套使用。
13.逻辑地址由段基值和偏移量组成。
将逻辑地址转换为物理地址的公式是段基值*16+偏移量。
其中的段基值是由段寄存器存储。
14.一个有16个字的数据区,它的起始地址为70A0:0100H,那么该数据区的最后一个字单元的物理地址为70B1E H。
15.DEBUG命令中,显示内存命令 D ,显示寄存器命令R,汇编命令 A ,执行命令G 。
16.根据操作数的个数,汇编指令可以分为无操作数指令, 单操作数指令和双操作数指令。
17.令(AL)=98H,(BL)=12H,则执行指令MUL BL后,(AX)=0AB0H ,OF= 1 ,CF= 1 。
二、单项选择1.下列四个寄存器中,不能作为间接寻址的寄存器是(C)A、BXB、BPC、DXD、DI2.存储器每段最长(B)A、64BB、64KBC、16MBD、1MB3.下列指令中,正确的是(A)A、ADD AX,[BX+SI]B、MOV AH,BXC、MOV CS,AXD、NOT CX,AX4.表示一条指令的存储单元的符号地址称(A)A、标号B、变量C、类型D、偏移量5.下列不是变量的类型的是( B )A、字节型B、字符型C、字型D、双字型6.分别写出下列寄存器的位数AX, BH, CX, CS(D)A、8位、16位、32位、16位B、16位、8位、32位、16位C、8位、16位、16位、32位D、16位、8位、16位、16位7.INC指令不影响(B)标志。
A、OFB、CFC、SFD、ZF8.假定(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地址是(D)A、20102HB、20101HC、200FEHD、200FFH9.设(AL)=86,(BL)=68,执行SUB AL,BL指令后,正确的结果是( D )。
A、SF=1B、ZF=1C、CF=1D、OF=110.将累加器AX的内容清零的正确操作是(C)。
A、ADD AX,0B、OR AX,AXC、XOR AX,AXD、CMP AX,AX11.一个完整的计算机系统通常应包括( C )。
A、系统软件和应用软件B、计算机及其外部设备C、硬件系统和软件系统D、系统硬件和系统软件12.计算机的软件系统一般分为( A )两大部分。
A、系统软件和应用软件B、操作系统和计算机语言C、程序和数据D、DOS和Windows13.用高级语言编写的程序( C )。
A、只能在基本种计算机上运行B、无需经过编译或解释,即可被计算机直接执行C、具有通用性和可移植性D、几乎不占用内存空间14.下面几个不同进制的数中,最小的数是( C )。
A、1001001BB、75C、37DD、A7H15.十进制正数38的八位二进制补码是(D)。
A、00011001B、10100110C、10011001D、0010011016.MOV AX,ES:[BX][SI]的源操作数的物理地址是( B )。
A、16d×(DS、+(BX、+(SI、B、16d×(ES、+(BX、+(SI、C、16d×(SS、+(BX、+(SI、D、16d×(CS、+(BX、+(SI、17.下列数据中,可能是八进制数的是(B)。
A、488B、317C、597D、18918.计算机语言有许多种,其中与硬件直接相关的是( C )A、网络语言B、操作系统C、机器语言D、高级语言19.执行指令MOV AL, [BP] 时,所读取的数据应在( C )A、CS段中B、DS段中C、SS段中D、ES段中20.和外存相比,内存的特点是( A )。
A、容量小、速度快、成本高B、容量小、速度快、成本低C、容量大、速度快、成本高D、容量大、速度快、成本低21.运算器的主要功能是( C )。
A、算术运算B、逻辑运算C、算术运算与逻辑运算D、函数运算22.汇编程序的循环控制指令中,隐含使用( C )寄存器作为循环次数计数器。
A、AXB、BXC、CXD、DX23.下面关于寄存器不正确的表述是:(C)A、AX寄存器是算术运算的主要寄存器,又称为累加器B、BP、SP通常作为地址指针寄存器C、IP指令指针寄存器可以通过MOV命令改变其值D、标志位寄存器中的状态标志位会受算术单元的运算结果而改变。
24.用来存放下一条将要执行的的指令地址的寄存器是( B )A、S PB、IPC、BPD、CS25.完成将BX清零,并使标志位CF清零,下面错误的指令是(B)A、SUB BX ,BXB、MOV BX,00HC、XOR BX,BXD、AND BX,00H三、判断1、当运算的结果有奇数个1时,PF=0。
(√)2、MOV AL, BX 是正确指令。
(×)3、SP的内容可以不指向堆栈的栈顶。
(×)4、DW伪指令用来定义双字。
(×)5、MOV指令要影响标志位。
(×)6、同一物理地址,可以有不同的逻辑地址。
(√)7、1KB=1000B。
(×)8、存储器中的各段不允许重叠。
(×)9、立即数不能作为目的操作数。
(√)10、所有的条件转移指令都不影响标志位。
(√)11、汇编语言是一种高级程序语言。
(×)12、1个cpu的寻址能力为8kb,那么它的地址总线宽度为12。
(×)13、伪指令也有相对应的机器指令。
(×)14、SS:SP有时候可以不指向栈顶元素。
(√)15、jmp的短转移是一种段间转移。
(×)16、loop指令能够实现段间转移。
(×)17、add指令只影响ZF标志位的取值。
(×)18、push指令可以将一个字节压入栈中。
(×)四、程序分析1、写出指令运行结果MOV AL ,80HMOV BL ,08HMUL BL则(AX)= 0400H 。
该指令完成AL 寄存器和BL寄存器的内容相乘,结果存入AX寄存器中。