汇编语言大题1

合集下载

汇编语言题库

汇编语言题库

汇编语⾔题库1⼤学课程《汇编语⾔程序设计》模拟试题⼀、单项选择题1、指令JMPFARPTRDONE属于(C)。

A.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2、执⾏下⾯指令序列后,结果是(A)。

MOVAL,82HCBWA.AX=0FF82HB.AX=8082HC.AX=0082HD.AX=0F82H3、8088/8086存储器分段,每个段不超过(D)。

A.64K个字B.32K个字节C.1兆个字节D.64K个字节4、CPU发出的访问存储器的地址是(A)。

A.物理地址B.偏移地址C.逻辑地址D.段地址5、BUFDW10HDUP(3DUP(2,10H),3,5)上述语句汇编后,为变量BUF分配的存储单元字节数是(B)。

A.80HB.100HC.124D.1926、若AX=-15要得到AX=15应执⾏的指令是(A)。

A.NEGAXB.NOTAXC.INCAXD.DECAX7、8086/8088系统执⾏传送指令MOV时(A)。

A.不影响标志位B.影响DF⽅向标志C.影响SF符号标志D.影响CF进位标志8、MOVAL,79ADDAL,0B1H上⾯指令执⾏后,设置的标志位CF和OF的值是(D)。

A.CF=0,OF=1B.CF=1,OF=1C.CF=0,OF=1D.CF=1,OF=09、检查BUF的内容是否为正偶数,如是正偶数,则AL=0。

下⾯程序段正确的是(C)。

A.MOVAL,BUFB.MOVAL,BUFJNCK1MOVAL,0MOVAL,0K2:……K1:C.MOVAL,BUFD.MOVAL,BUFTESTAL,81HJNPK4JNZK3TESTAL,80HMOVAL,0JNZK4K3:MOVAL,0K4:10、下列指令中操作数在代码段中的是(A)。

A.MOVAL,42HB.ADDAL,BLC.SUB[BX],DID.INC[DI]11、与MOVBX,OFFSETVAR指令完全等效的指令是(D)。

汇编语言复习资料4

汇编语言复习资料4

《汇编语言》试卷一、单选题(每题1分,共20分)1.CPU在读取指令时,实际读到的是什么?()A.伪指令和汇编指令所对应的字符串B.用汇编语言写的源程序中的信息C.由一系列二进制位组成的信息D.汇编指令所对应的字符串2.关于编译和连接,错误的说法是()。

A.编译产生的*.obj文件不能在操作系统下直接运行B.连接产生的*.exe文件里面没有伪指令C.编译可以检查出语法错误D.连接可以检查出逻辑错误3.CPU传递到地址总线上的地址是()。

A.逻辑地址B.偏移地址C.物理地址D.段地址4.一条将立即数赋值给寄存器的指令,在执行的前一刻,指令中的立即数在()中。

A.通用寄存器B.端口C.内存D.CPU内部的指令缓冲器5.关于8086CPU的几个寄存器,正确的说法是()。

A.可将BX当成两个8位寄存器,在偏移地址范围为0~255时,可以用“mov ax,[bl]”来实现将内存中的数据读到ax中B.可以用“byte ptr”实现将SI当成两个8位寄存器使用C.可将AX、BX、CX、DX当成8个8位寄存器使用D.AX、ah、al是不同的寄存器,指令“add al,bl”的执行不会影响AX的值6.对于16位结构的CPU,其应有的特征不包括()。

A.寄存器最大宽度是16位B.寄存器与运算器之间的通路为16位C.运算器一次处理的数据的最大宽度为16位D.地址总线宽度是16位7.下列与8086CPU寻址相关的说法,错误的是()。

A.8086CPU有20根地址总线,它的寻址能力为1MBB.一个物理地址可以对应多个段地址与偏移地址C.因为段寄存器是16位,所以一个段最大为64KBD.CPU内部有一个能合成20位地址的地址加法器8.8086CPU读取、执行指令的过程是()。

①从CS:IP指向的内存空间读取指令,将指令放入指令缓冲器②执行指令,转到步骤①③IP指向下一条指令A.①、②B.①、③、②C.若指令是转移指令,过程为①、③、②,不是则过程为①、②D.若指令是转移指令,过程为①、②,不是则过程为①、③、②9.对于8086CPU,错误的指令是()。

钱晓捷新版汇编语言程序设计习题答案(1-4)

钱晓捷新版汇编语言程序设计习题答案(1-4)

钱晓捷新版汇编语⾔程序设计习题答案(1-4)钱晓捷新版汇编语⾔程序设计习题答案第⼀章汇编语⾔基础知识1.17、举例说明CF和OF标志的差异。

溢出标志OF和进位标志CF是两个意义不同的标志进位标志表⽰⽆符号数运算结果是否超出范围,运算结果仍然正确;溢出标志表⽰有符号数运算结果是否超出范围,运算结果已经不正确?例1:3AH + 7CH=B6H⽆符号数运算:58+124=182,范围内,⽆进位有符号数运算: 58+124=182 ,范围外,有溢出?例2:AAH + 7CH=(1)26H⽆符号数运算:170+124=294,范围外,有进位有符号数运算:-86+124=28 ,范围内,⽆溢出1.20、8086有哪4种逻辑段,各种逻辑段分别是什么⽤途?(解答)代码段(Code Segment)⽤来存放程序的指令序列。

处理器利⽤CS : IP取得下⼀条要执⾏的指令堆栈段(Stack Segment)确定堆栈所在的主存区域。

处理器利⽤SS : SP操作堆栈中的数据数据段(Data Segment)存放当前运⾏程序所⽤的数据。

处理器利⽤DS : EA存取数据段中的数据附加段(Extra Segment)是附加的数据段,也⽤于数据的保存。

处理器利⽤ES : EA存取数据段中的数据第⼆章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 ;AX=1200h(2) mov ax,bx ; AX=0100h(3) mov ax,[1200h] ; AX=4C2Ah(4) mov ax,[bx] ; AX=3412h(5) mov ax,[bx+1100h] ; AX=4C2Ah(6) mov ax,[bx+si] ; AX=7856h(7) mov ax,[bx][si+1100h] ; AX=65B7h2.2指出下列指令的错误(1) mov cx,dl 两操作数类型不匹配(2) mov ip,ax IP 指令指针禁⽌⽤户访问(3) mov es,1234h ⽴即数不允许传给段寄存器(4) mov es,ds 段寄存器之间不允许传送(5) mov al,300 两操作数类型不匹配(6) mov [sp],ax ⽬的操作数应为[ BP ](7) mov ax,bx+di 源操作数应为 [BX+DI](8) mov 20h,ah ⽴即数不能作⽬的操作数2.3已知数字0 ~ 9对应的格雷码依次为:18H、34H、05H、06H、09H、0AH、0CH、11H、12H、14H,它存在于以table为⾸地址(设为200H)的连续区域中。

汇编习题1

汇编习题1

一、选择题1、8086CPU中程序计数器IP中存放的是。

A、指令B、指令在现行代码段中的偏移地址C、操作数D、操作数在现行代码段中的偏移地址2、Intel8086CPU内部的两大功能部件是。

A、标志寄存器及ALUB、BIU及EUC、指令队列及AIUD、地址加法器及ALU3、8086CPU有20根地址线,直接寻址内存的空间为b 。

A、64MBB、1MBC、4MBD、8MB4、Intel8086堆栈是按 c 原则构造的。

A、先进先出B、后进后出C、先进后出D、随机存取5、微型计算机主存储器的基本编址单元的长度是 d 。

A、64位B、32位C、16位D、8位6、为使CPU识别不同的内存单元,需要为每个内存单元规定不同的b 。

A、符号B、地址C、数据D、状态7、指令指针IP与 d 组合使用,确定下一条指令存放单元的物理地址。

A、CSB、ESC、SSD、DS8、堆栈指针SP与 c 组合使用,确定栈顶单元的物理地址。

A、CSB、ESC、SSD、DS9、8086对内存进行分段管理,一个段的最大范围是a 。

A、64KBB、128KBC、512MBD、1MB10、8086CPU用于存放当前数据段段基址的寄存器是d 。

A、CSB、ESC、SSD、DS11、为数据段基址寄存器DS赋值得汇编语句正确的是d 。

A、ASSUME DS:DATAB、SEGMENT DATAC、MOV DS,DATAD、MOV AX,DATAMOV DS,AX12、下列描述正确的是b 。

A、汇编语言只由指令语句构成B、汇编语言语句包括指令语句和伪指令语句C、指令性语句和伪指令语句的格式是完全相同的D、指令性语句和伪指令语句都能经过汇编程序翻译成机器代码13、8086/8088系统中,一个栈可使用的最大空间是 c 。

A、1MBB、由SP初值决定C、64KBD、由SS初值决定14、若(AL)=10101101B,为了使其内容变为01011101B,下列哪一种执行一次即可完成此操作?bA、NOT指令B、AND指令C、XOR指令D、OR指令15、设(SS)=2000H,(SP)=0100H,(AX)=2107H,执行指令PUSH AX后,存放数据21H的物理地址为 d 。

大工14 秋《汇编语言程序设计》在线测试1答案

大工14 秋《汇编语言程序设计》在线测试1答案

大工14 秋《汇编语言程序设计》在线测试1
单选题判断题多选题
一、单选题(共10 道试题,共30 分。


1. 下面的数值表示中,和127相等的是哪一个()
A. 11111111B
B. 127H
C. 80H
D. 7FH
正确答案:D
2. 在IBM PC中,一个字为()位二进制数。

A. 8位
B. 16位
C. 32位
D. 64位
正确答案:B
3. 一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是()
A. 12CSBH
B. 12B6BH
C. 12C59H#12BFEH
正确答案:C
4. 8086CPU在执行8位有符号数运算后,产生溢出是结果超出了:()
A. 0~255
B. +128~-128
C. +255~-256
D. +127~-128
正确答案:D
5. 已知物理地址(371F0H)=12H,(371F1H)=34H,(371F2H)=56H,如从地址371F0H 中取出一个字的内容是()
A. 3412H
B. 3421
C. 3410H
D. 3424
正确答案:A
6. CPU要访问的某一存储单元的实际地址称()
A. 段地址
B. 偏移地址
C. 物理地址
D. 逻辑地址。

汇编复习-原题(1)1

汇编复习-原题(1)1

汇编复习-原题(1)1汇编语⾔期末复习题第⼀部分:基础知识1、在汇编语⾔程序的开发过程中使⽤宏功能的顺序是( )。

A、宏定义,宏调⽤B、宏定义,宏展开C、宏定义,宏调⽤,宏展开D、宏定义,宏展开,宏调⽤2、汇编语⾔源程序中,每个语句由四项组成,如语句要完成⼀定功能,那么该语句中不可省略的项是( )。

A、名字项B、操作项C、操作数项D、注释项3、可屏蔽中断就是它的请求是否被CPU响应要受()的控制。

4、使⽤LINK连接命令,执⾏后可⽣成⽂件的扩展名为()。

5、在寄存器间接寻址中,如果指令中指定的寄存器为BP,则操作数在段中,段地址在寄存器中。

6、注释项⽤于说明程序段或是⼀条和⼏条指令的功能,⼀般⽤表⽰注释的开始。

7、DOS系统功能调⽤⽅式为:(1)置⼊⼝参数;(2)中断程序编号送寄存器后执⾏INT 21H。

8、通常主程序和⼦程序间参数传送的⽅法有三种:、、。

9、是CPU暂停当前程序的执⾏,转⽽执⾏处理紧急事务的程序,并在该事务处理完后能⾃动恢复执⾏原先程序的过程。

在此,称引起紧急事务的事件为。

10、在字符串操作指令中,DS∶指向源串,ES∶指向⽬的串。

11、计算机系统通过与外围设备通信。

12、键盘I/O、显⽰I/O和打印I/O分别对应、和号中断。

13、字符显⽰模式缓冲区中的⼀个字对应于屏幕上的⼀个字符。

每个字的第⼀个字节为显⽰字符的,第⼆个字节为显⽰字符的。

14、简述上机运⾏汇编语⾔程序的过程。

15、简述程序中指令和伪指令的区别。

16、⼗六进制数88H,可表⽰成下⾯⼏种形式,请找出错误的表⽰()。

①⽆符号⼗进制数136 ②带符号⼗进制数-120③压缩型BCD码⼗进制数88 ④ 8位⼆进制数-8的补码表⽰17、指令指针寄存器是。

B.名字的第⼀个字符可以是字母、数字及、@、_C.名字的有效长度≤31个字符D.在名字中不允许出现$19、CS寄存器属于。

20、已知物理地址(371F0H)=12H,(371F1H)=34H,(371F2H)=56H,如从地址371F0H中取出⼀个字的内容是。

汇编语言习题 (1)

汇编语言习题 (1)

第1章自测练习一、选择题(四选一)1.某个加法运算结果使标志ZF=1,则标志SF为。

A 0B 1C 不改变原来的状态D 不确定2.可以为存储器操作数提供偏移地址的寄存器组是。

A AX、BX、CX、DXB BX、BP、SI、DIC SP、IP、BP、DXD CS、DS、ES、SS3.8086/8088确定下一条执行指令物理地址的计算表达式为。

A DS× 16+EAB ES× 16+EAC SS×l6+SPD CS×l6+IP4.某系列微机对存储器分段,如果每个段最多的字存储单元(16位二进制)是32K,那么表示段内字节单元偏移地址的二进制位数应是位。

A 14B 15C 16D 205.十进制数-100的8位二进制数的补码为。

A 10011011B 01100100C 10011101D 100111006.下列各个8位二进制数的补码中,绝对值最大的是。

A 10001000B 11111110C 00000100D 000000017.16位有符号数的补码所表示的十进制数的范围是。

A -32767~+32768B -32768~+32767C -65535~+65536D 0~655358.对数值83A7H作逻辑非运算后的结果是——·A 83A8H B、73A8H C、7C59H D、7C58H9.指令“mov cx,[bp+16]”的源操作数采用的段寄存器是。

A CSB SSC DSD ES10.指向程序堆栈区的段寄存器是。

A CSB SSC DSD ES11.有效地址是指。

A 存储器操作数的物理地址B 存储器操作数的段地址C 存储器操作数的偏移地址D 立即数的偏移地址12.寄存器间接寻址方式中,操作数在中。

A 通用寄存器B 段寄存器C 主存单元D 堆栈13.指令“mov ax,es:[bx][si]”源操作数的物理地址是。

A 16×CS+BX+SIB 16×SS+BX+SIC 16×DS+BX+SID 16×ES+BX+S114.算术运算类指令的寻址和转移类指令的寻址,两者的不同之处是。

汇编语言试题及参考答案1

汇编语言试题及参考答案1

汇编1一、单项选择题(每小题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,19,buf2 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,100。

MOV 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)》模拟试题一和答案

《汇编语言程序设计(1)》模拟试题一和答案

《汇编语言程序设计(1)》模拟试题一一、单项选择题(本大题共20个小题,每小题2分,共计40分)1、为了便于实现多级中断,保存现场信息最有效的方式是采用( )。

A、通用寄存器B、堆栈C、存储器D、寄存器2、8086CPU中有4个数据寄存器,其中AX除用作通用寄存器外,还可用作( )。

A、累加器B、计数器C、基址寄存器D、段寄存器3、如果(AL)=11111111B,执行INC AL指令后,CF= ( )。

A、1B、0C、2D、和执行INC AL指令之前的取值保持一致4、以下指令中,执行后要影响标志位的指令为( )。

A、MOV AL,BLB、LAHFC、CLCD、PUSHF5、在机器内部操作中,CPU与存储器之间的任何信息交换使用的都是( )。

A、逻辑地址B、物理地址C、有效地址D、相对地址6、用来表示堆栈指针的寄存器是( )。

A、IPB、BPC、SPD、SS7、8086CPU在基址加变址的寻址方式中,变址寄存器可以为()。

A、BX或CXB、CX或SIC、DX或SID、SI或DI8、如果当前(SP)=0058H,执行POP AX指令后,(SP)=( )。

A、60HB、56HC、59HD、5AH9、设DS=27FCH,某一数据存储单元的偏移地址为8640H,则数据存储单元的物理地址正确的是( )。

A、27FCHB、27FC0HC、8640HD、30600H10、PSW寄存器中共有( )位条件状态位,有( )位控制状态位。

A、6、3B、3、6C、8、4D、4、811、“与非”门中的某一个输入值为“0”,那么它的输出值( )。

A、为“0”B、为“1”C、取决于正逻辑还是负逻辑D、取决于其他输入端的值12、在段内寻址时,可以提供偏移地址的寄存器组是( )。

A、AX、BX、CX、DXB、BP、SS、IP、SIC、BX、BP、SI、DID、CS、DS、ES、SS13、为了便于实现多级中断,保存现场信息最有效的方式是采用( )。

华电微机原理与技术汇编语言题目及答案

华电微机原理与技术汇编语言题目及答案

微机原理与接口技术汇编题目1、将数据段中2000H单元开始存放的10个数(8位数)传送到3000H开始的10个字节中。

2、将数据段DATA1中的10个字数据(16位数)传送到数据段DATA2中。

提示:1、指定数据的起始地址:(如果不指定起始地址,则起始地址为0000H)DATA SEGMENTORG 2000HDB 1,,2,3,4,5,6,7,8,9,10 ; DB 定义字节数据ORG 3000HDB 10 DUP(O); 预留10个单元存放结果,初值预定义为0DATA ENDS定义的内存单元为:2、定义字数据命令为:DWDATA1 SEGMENTDW 1 , ,2 , 3, 4, 5, 6, 7, 8, 9, 10 ; DW 定义字数据DATA1 ENDS一个字为两个字节,在内存中低位在前,高位在后。

1已知0~15的平方值表,查表求X ( X是0到15间任一数)的平方值,送到Y单元,用两种方法。

2、已知0~255的平方值表,查表求X的平方值,送到Y单元。

提示:0到15的平方表,每个平方值为一个字节;0到255的平方表,每个平方值为2个字节;调试程序,平方表中的数据定义几个就行,目的是程序正确即可。

一个字为两个字节,在内存中低位在前,高位在后。

1计算多字节数据788H与99AABBCCDDEEFF00H和。

2、计算8字节的BCD码十进制数788H与H的和3、计算10个字数据的和(数据自己定义)。

提示;1、多字节数据在内存中存放,低位在前,高位在后DAT1 DB 88H,77H,66H,55H,44H,33H,22H,11HDAT2 DB 00H,0FFH,0EEH,0DDH,0CCH,0BBH,0AAH,99H DAT3 DB 9 DUP(O)二进制加法指令:ADDBCD十进制加法:ADD(4 )计算表达式的值1计算表达式Z ((X Y)*7)/(Y 2)的值,已知X=10, 丫=5。

提示:X DB 10Y DB 5Z DB ?AL=X-YBL=7AX=AL*BLBH=Y+2AL=AX/BH 的商AH=AX/BH的余数' -NniL无符号数乘法•JAmi有符号数乗法・例W I 讥-AX <- AL*DL1MHL BX : DX AX <-AX*BXMI L BYTE PTR[SI|; AX < AL*(DS* 16+STj(5)找最大、最小数1、找出2040H单元和2041H单元的大数,并送2042H单元(数据自己定义)2、找出10个数(8位数)里的最大数(数据自己定义)1、找出10个数(8位数)里的正数个数(数据自己定义)2、找出10个数(16位数)里的负数个数(数据自己定义)(7)数据块比较1、分别在FARD1和FARD2单元开始存放了10个字节数据,编程比较是否一义)。

汇编语言复习题(附答案)[1]

汇编语言复习题(附答案)[1]

汇编语言复习题注:蓝色标记的为答案,此答案仅供参考,大家自己做一下或看以一下,认为不对的地方,可以提出来一起讨论一下,另外看一下课后老师布置的相应作业。

在此文档最后最后附有课后四、六章的答案,大家抓紧时间复习哦!一、选择题1.把要执行的程序与库文件连接起来形成可执行文件的系统程序是( B ) 。

A.汇编程序B.连接程序C.机器语言程序D.源代码程序2.在8088/8086的寄存器组中,CPU确定下一条指令的物理地址时需要用到的寄存器对是( C )。

A..SS和SPB.DS和DIC.CS和IPD.ES和SI3.为了使主机访问外设方便起见,外设中的每个寄存器给予一个( C )。

A.物理地址B. 逻辑地址C. 端口地址D.段地址4.MOV AX,3064H,该指令中源操作数采用的寻址方式是( A )。

A.立即B.直接C.寄存器相对D.寄存器间接5.换码指令的助记符是( C )。

A. XCHGB. LEASC.XLATD. MOV6.如果A≥B(A、B有符号数)发生转移,应选择的条件转移指令是 ( JGE )。

7.下列符号中,可用作标识符的是( C )。

A.MOVB.AXC.MSG1D.1ABC8.X DB 10H DUP(1,2)内存变量定义语句拥有了( A )个字节的存储空间。

A.20DB.10DC.20HD.10H9.当DF=0时,执行串操作指令MOVSB,变址寄存器SI、DI的值将( C)。

A. 不变B.减1C.加1D.无法确定10.如下指令可将AX寄存器内容改变的是( A )。

A.AND AX , BX B.TEST AX , BX C.CMP AX ,BX D.XCHG AX , AX11.16位CPU支持的I/O地址范围是( D )。

A.0~0FFFFFH B.0~0FFFFH C.0~0FFFH D.0~0FFH12.MUL CL指令实现的功能是( A )。

A.无符号乘法:AX AL×CL B.有符号乘法:AX AL×CLC.无符号乘法:DX AL×CL D.有符号乘法:DX AL×CL13.DOS系统功能调用(INT 21H)中,显示字符串的功能号是( D )。

汇编语言试题及答案(1).

汇编语言试题及答案(1).

一,单项选择题(每小题1分,共20分1.指令JMP FAR PTR DONE属于(A.段内转移直接寻址B.段内转移间接寻址C.段间转移直接寻址D.段间转移间接寻址2.下列叙述正确的是(A.对两个无符号数进行比较采用CMP指令,对两个有符号数比较用CMP S指令B.对两个无符号数进行比较采用CMPS指令,对两个有符号数比较用CM P指令C.对无符号数条件转移采用JAE/JNB指令,对有符号数条件转移用JGE/J NL指令D.对无符号数条件转移采用JGE/JNL指令,对有符号数条件转移用JAE/J NB指令3.一个有128个字的数据区,它的起始地址为12ABH:00ABH,请给出这个数据区最末一个字单元的物理地址是(A.12C5BHB.12B6BHC.12C5AHD.12BFEH4.在下列指令的表示中,不正确的是(A.MOV AL,[BX+SI]B.JMP SHORT DONIC.DEC [BX]D.MUL CL5.在进行二重循环程序设计时,下列描述正确的是(A.外循环初值应置外循环之外;内循环初值应置内循环之外,外循环之内B.外循环初值应置外循环之内;内循环初值应置内循环之内C.内、外循环初值都应置外循环之外D.内、外循环初值都应置内循环之外,外循环之内6.条件转移指令JNE的测试条件为(A.ZF=0B.CF=0C.ZF=1D.CF=17.8086CPU在基址加变址的寻址方式中,变址寄存器可以为(A.BX或CXB.CX或SIC.DX或SID.SI或DI8.已知BX=2000H,SI=1234H,则指令MOV AX,[BX+SI+2]的源操作在(中。

A.数据段中偏移量为3236H的字节B.附加段中偏移量为3234H的字节C.数据段中偏移量为3234H的字节D.附加段中偏移量为3236H的字节9.执行如下程序:(MOV AX,0MOV BX,1MOV CX,100A:ADD AX,BXINC BXLOOP AHLT执行后(BX=(A.99B.100C.101D.10210.上题的程序执行后(AX=(A.5000B.5050C.5100D.515011.对于下列程序段:(AGAIN:MOV AL,[SI]MOV ES:[DI],ALINC SIINC DILOOP AGAIN也可用______指令完成同样的功能。

大工12春《汇编语言程序设计》在线作业1

大工12春《汇编语言程序设计》在线作业1

大工12春《汇编语言程序设计》在线作业1 大工12春《汇编语言程序设计》在线作业11. 在计算机中表示存储容量时,下列描述中正确的是A. 1KB=1024MBB. 1KB=1000BC. 1MB=1024KBD. 1MB=1024GB正确答案:C 满分:4 分得分:42. 执行除法指令后,影响的标志位是:()A. CF,OFB. SF,ZFC. CF,OF,SFD. AF,CF,OF,PF,SF,ZF都不确定正确答案:D 满分:4 分得分:43. 将十六进制数8765转化为二进制数,结果是:()A. 1000101101100101B. 1000011101100110C. 1000011110100101D. 1000011101100101正确答案:D 满分:4 分得分:44. 8位二进制补码整数的最小值是:()A. -126B. -127C. -128D. -129正确答案:C 满分:4 分得分:45. 在8086/8088中,寄存器BP的功能是:()A. 存放段的首地址B. 用于变址操作C. 存放堆栈段的偏移地址D. 存放代码段的偏移地址正确答案:B 满分:4 分得分:46. 指令MOV SI,10的源操作数的寻址方式是:()A. 变址寻址B. 立即数寻址C. 寄存器寻址D. 寄存器间接寻址正确答案:B 满分:4 分得分:47. 下列是8位二进制数的补码,其中真值最大的是:()A. 10001000B. 11111111C. 00000000D. 00000001正确答案:D 满分:4 分得分:48. 在计算机中一个字节由()位二进制数组成A. 2B. 4C. 8D. 16正确答案:C 满分:4 分得分:49. 若(AX)=3500H,(CX)=56B8H,当 AND,AX,CX指令执行后,(AX)=()A. 1400HB. 77F8HC. 0000HD. 0FFFFH正确答案:A 满分:4 分得分:410. 能保存各逻辑段的起始地址的寄存器称为:()A. 段寄存器B. 地址寄存器C. 数据寄存器D. 计数寄存器正确答案:A 满分:4 分得分:4大工12春《汇编语言程序设计》在线作业1试卷总分:100 测试时间:-- 试卷得分:96单选题多选题判断题二、多选题(共 5 道试题,共 40 分。

1-11章汇编测试题目(汇编网)

1-11章汇编测试题目(汇编网)

第1章汇编测试题目(后附答案)1、1个CPU读取1024字节的数据至少读取了512次,数据总线的宽度_____。

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

A、0~9FFFFB、A0000~B7FFFC、B8000~BFFFFD、C0000~FFFFF3、下列哪个计算机部件能确定一组二进制数是要执行的指令还是用于操作的数据_____。

A、显示器B、硬盘C、内存D、中央处理器4、关于总线的说法错误的是_____。

A、地址总线的宽度决定了CPU的寻址能力。

B、数据总线的宽度决定了CPU与外界进行数据传送时的一次数据传送量。

C、控制总线的宽度决定了CPU对系统中其它器件的控制能力。

D、总线就是负责CPU内部信息传送的一系列导线。

5、1KB的存储器有____个存储单元A、1000B、1024C、512D、2566、1个CPU的寻址能力为32KB,那么它的地址总线宽度为_____。

A、13B、15C、18D、32k7、1KB的存储器可以存储____个bit 。

A、1024B、8192C、1000D、88、1个CPU访问的最大内存地址是1023,地址总线的宽度_____。

A、8B、10C、13D、149、计算机中一个存储单元可以存储多少信息_____。

A、1bitB、1ByteC、1KBD、512B10、下列说法正确的是:____A、在计算机中,存储器分为指令存储器和数据存储器。

B、电子计算机的最小信息单位是Byte。

C、微型存储器的容量是以Byte为最小单位来计算的。

D、在“1KB=1024B”中,“B”代表的是Bit。

11、一个CPU的寻址能力为8KB,那么它的地址总线的宽度为____。

A、8B、10C、12D、1312、下列说法中正确的是____。

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

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

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

汇编语言程序设计(第四版)第1~5章【课后答案】

汇编语言程序设计(第四版)第1~5章【课后答案】

第1章汇编语言基础知识〔习题1.1〕简述计算机系统的硬件组成及各部分作用。

〔解答〕CPU:包括运算器、控制器和寄存器组。

运算器执行所有的算术和逻辑运算;控制器负责把指指令逐条从存储器中取出,经译码分析后向机器发出各种控制命令,并正确完成程序所要求的功能;寄存器组为处理单元提供所需要的数据。

存储器:是计算机的记忆部件,它用来存放程序以及程序中所涉及的数据。

外部设备:实现人机交换和机间的通信。

〔习题1.2〕明确下列概念或符号:主存和辅存,RAM和ROM,存储器地址和I/O端口,KB、MB、GB和TB。

〔解答〕主存又称内存是主存储器的简称,主存储器存放当前正在执行的程序和使用的数据,CPU可以直接存取,它由半导体存储器芯片构成其成本高、容量小、但速度快。

辅存是辅助存储器的简称,辅存可用来长期保存大量程序和数据,CPU 需要通过I/O接口访问,它由磁盘或光盘构成,其成本低、容量大,但速度慢。

RAM是随机存取存储器的英语简写,由于CPU可以从RAM读信息,也可以向RAM写入信息,所以RAM也被称为读写存储器,RAM型半导体存储器可以按地址随机读写,但这类存储器在断电后不能保存信息;而ROM中的信息只能被读出,不能被修改,ROM型半导体通常只能被读出,但这类存储器断电后能保存信息。

存储器由大量存储单元组成。

为了区别每个单元,我们将它们编号,于是,每个存储单元就有了一个存储地址,I/O接口是由一组寄存器组成,为了区别它们,各个寄存器进行了编号,形成I/O地址,通常称做I/O端口。

KB是千字节、MB是兆字节、GB是吉字节和TB是太字节,它们都是表示存储器存储单元的单位。

〔习题1.3〕什么是汇编语言源程序、汇编程序、目标程序?〔解答〕用汇编语言书写的程序就称为汇编语言源程序;完成汇编工作的程序就是汇编程序;由汇编程序编译通过的程序就是目标程序。

〔习题1.4〕汇编语言与高级语言相比有什么优缺点?〔解答〕汇编语言与高级语言相比的优点:由于汇编语言本质就是机器语言,它可以直接地、有效地控制计算机硬件,因而容易产生运行速度快,指令序列短小的高效目标程序,可以直接控制计算机硬件部件,可以编写在“时间”和“空间”两方面最有效的程序。

汇编语言课后习题及答案_按章节_超全面[1]

汇编语言课后习题及答案_按章节_超全面[1]

`00第一章课外练习题一、单项选择题:1.从键盘输入的字符,在计算机内存储的是它的(A)(A)二进制编码(B)四进制编码(C)八进制编码(D)十六进制编码2.6位无符号二进制数能表示的最大十进制数是(B)。

(A)64 (B)63 (C)32 (D)31 3.十进制数269变换为十六进制数是(C)。

(A)10B (B)10C (C)10D (D)10E 4.8位的微型计算机系统是以16位来表示地址,则该微机系统有(C)个地址空间。

(A)255 (B)65535 (C)65536 (D)1048576 5.8位有符号二进制数能表示的最大十进制数是(D)。

(A)256 (B)255 (C)128 (D)127 6.十六进制数88H,可表示成下面几种形式,请找出错误的表示(D)。

(A)无符号十进制数136 (B)带符号十进制数-120(C)压缩型BCD十进制数88 (D)8位二进制数-8的补码表示7.有一个数值152,它与十六进制数6A相等,那么该数值是(B)。

(A)二进制数(B)八进制数(C)十进制数(D)四进制数8.7位ASCII总共可表示(C)个符号。

(A)256 (B)127 (C)128 (D)255 9.4B的字长是(C)。

(A)8位(B)16位(C)32位(D)64位二、判断题(判断每题正误,对的在题后括号内划“√”,错的划“×”)1.字节通常用英文单词“Bit”来表示(×)。

2.目前广泛使用的Pentium计算机其字长为5个字节(×)。

3.存储器中将8个相邻的二进制位作为一个单位,这种单位称为字节(√)。

4.微型计算机的字长并不一定是字节的整数倍(×)。

三、填空题1.8位有/无符号整数的表示范围写成16进制形式为(80~~7F)/(00~~FF)。

2.己知:计算机中有一个“01100001”编码,如果把它看作是无符号数,它是十进制什么数(97);如果认为它是BCD,则表示(01100001)BCD;认为它是某个ASCII,则代表(a)字符。

16-17-1汇编语言与接口技术练习题(1)

16-17-1汇编语言与接口技术练习题(1)

《汇编语言与接口技术》练习题一、填空题1. 8086/8088微处理器由BIU和EU两个关键部件组成。

BIU的主要功能有取指令、传送数据和形成__物理地址_;EU的主要功能有指令译码、执行指令、向BIU传送__偏移地址__、管理通用寄存器和标志寄存器。

2. 在保护方式下,80386段寄存器中的值为__段选择子__,其中高13位索引用于选择描述符表(GDT或LDT)中的__段描述符__。

3. I/O端口的编址方式通常有2种:__独立编址__和__统一编址__。

4. 在保护模式下,存放256个中断描述符的内存区域称为中断描述符表(IDT)。

在实地址模式下,中断描述符表就是__中断向量表__。

5. CPU与I/O设备之间的接口信息有三种:__数据信息_、_状态信息__和__控制信息_。

6. 在查询式输入操作中,须查询输入设备是否__准备就绪(Ready)__;在查询式输出操作中,须查询输出设备是否忙(Busy)。

7. 定时器/计数器8253/8254采用BCD码计数时,其最大的计数值是__10000__,对应的计数初值为__0_。

8. 并行通信接口8255A有3种工作方式,其中_方式2_只允许A口使用。

9. 可编程中断控制器8259A中断请求优先级的设置有四种方式:全嵌套方式、__特殊全嵌套方式__、优先级自动循环方式和优先级特殊循环方式。

特殊全嵌套方式与全嵌套方式的不同之处在于特殊全嵌套方式除了允许高一级中断进入嵌套,还允许_同一级别(同级)__的中断进入嵌套。

10. 8259A的操作命令字OCW1用于向__中断屏蔽寄存器(IMR)_写入屏蔽信息。

11. 一片DMA控制器8237A有4个通道,若采用3片8237A级联,共可提供__10__个通道。

12. DMA控制器8237A有4种工作模式:单字节传输方式、__块传输方式__、请求传输方式和_级联方式__。

二、判断题1. 一个字存入存储器占有两个相邻的字节单元,低位字节存入高地址单元,高位字节存入低地址单元。

王庆生主编的汇编语言程序设计课后答案习题1详解

王庆生主编的汇编语言程序设计课后答案习题1详解

习题11.1把下列十进制数转换为二进制数和十六进制数。

(1)67 (2)34 (3)254 (4)123答:(1)67D=1000011B=43H(2)34D=100010B=22H(3)254D=11111110B=0feH(4)123D=1111011B=7bH1.2把下列二进制数转换为十六进制数和十进制数。

(1)01101101 (2)10110010 (3)111111答:(1)01101101B=6dH=109D(2)10110010B=0d2H=208D(3) 111111B=3fH=63D1.3作下列十六进制数的运算,并转换为十进制数校核。

(1)5a+64 (2)86-49 (3)123-9a (4)43*2b 答:(1) 5aH+64H=0beH90D+100D=190D正确(2)86H-49H=3dH134D-73D=61D正确(3)123H-9aH=89H291D-154D=137D正确(4)43H*2bH=0b3fH67D*43D=2881D正确1.4下列各数均为十进制数,请采用八位二进制补码运算,并回答标致寄存器flags中CF和OF的值,运算结果所代表的十进制数是多少?如果用十六进制补码运算,其结果所代表的十进制数是多少?FLAGS中CF和OF的值呢?(1)85+69 (2)85+(-69) (3)85-(-69) (3)85-(69)答:(1)八位二进制01010101+01000101=10011010=-102D CF=0,OF=1十六位二进制0000000001010101+0000000001000101=0000000010011010 =154DCF=0,OF=0(2)八位二进制01010101+10111011=00010000=16D CF=1,OF=0十六位二进制0000000001010101+1111111110111011=0000000000010000 =16DCF=1,OF=0(3)八位二进制01010101-10111011=10011010=-102D CF=1,OF=1十六位二进制0000000001010101-1111111110111011=0000000010011010 =154DCF=1,OF=0(4)八位二进制01010101-01000101=00010000=16D CF=0,OF=0十六位二进制0000000001010101-0000000001000101=0000000000010000 =16DCF=0,OF=01.5 实模式下,写出段地址和偏移地址为1234:2002、1430:0042、FF00:0FFF的物理地址。

汇编语言第一课作业1.1

汇编语言第一课作业1.1

汇编语⾔第⼀课作业1.11、1个cpu的寻址能⼒为8KB,那么它的地址总线宽度是⼏?答案:寻址能⼒为8KB,8*1024=8192。

2的13次⽅等于8192,所以地址总线宽度为13,也就是说有13根地址总线。

引申:为什么我们市⾯上的内存是128M、256M 、512M、1G、2G、4G、8G内存。

全都跟2的⼏次⽅有关系。

xp为什么只能认识3.25G内存?跟cpu的寻址能⼒有关系。

寻址能⼒也就代表着cpu能利⽤的内存。

我们常说32位系统,2的32次⽅是多少呢?应该就是4GB。

也就是说32位的cpu就是说32根地址总线。

2、1KB的存储器有⼏个存储单元,编号从⼏到⼏?答案:1KB=1024byte,就是1024个存储单元,编号从0到1023。

引申:从这⾥可以知道为啥数组的下标是从零开始。

3、1KB的存储器有⼏个bit,有⼏个byte?答案:1KB=1024个byte,1KB=1024*8个bit。

4、1GB、1MB、1KB分别是多少byte?答案:1KB=1024byte,1MB=1024KB-1024*1024byte,1GB=1024MB=1024*1024KB=1024*1024*1024byte。

引申:从上⾯发现不了什么,这样看:1KB=2的10次⽅byte,1MB=2的20次⽅byte,1GB=2的30次⽅byte,不⽤算就知道1TB等于2的40次⽅byte。

500G的硬盘应该能存放2的39次⽅个byte(不考虑500G的硬盘在电脑上实际只有465G左右)。

5、8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,它们的寻址能⼒分别为多少?答案:2的16次⽅是64KB,2的20次⽅是1MB,2的24次⽅是16MB,2的32次⽅是4GB。

6、8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根,它们的传送数据分别为多少?答案:8根为1byte,16根为2个byte,32根为4个byte。

题目:1.判断对错,并指出原因MOVSS:[BX+DI],1000HMOVDX,1000H...

题目:1.判断对错,并指出原因MOVSS:[BX+DI],1000HMOVDX,1000H...

题目:1. 判断对错,并指出原因MOV SS:[BX+DI],1000HMOV DX,1000HMOV WORD PTR[BX],1000HMOV DS,2000Hmov ax,blmov cs,axmov byte ptr[bx],1000mov ip,axmov ax,[sp]mov ax,[si][di]mov ds,ssmov al,ffh2. 下面所列通用数据传送MOV指令的几种传送中,正确的传送方式是_____________。

A 立即数到寄存器B 立即数到存储器C 从寄存器到存储器D 从存储器到存储器E 从存储器到寄存器3. 指令“mov ax,[bx]”中有效地址EA是BX的内容。

1.解答:MOV SS:[BX+DI],1000H 对MOV DX,1000H 对MOV WORD PTR[BX],1000H 对MOV DS,2000H 错。

不能直接给段寄存器赋值mov ax,bl 错。

源操作数和目的操作数的类型不一致mov cs,ax 对mov byte ptr[bx],1000 错。

源操作数是字类型,目的操作数是字节类型mov ip,ax 错。

不能给指令指针寄存器赋值mov ax,[sp] 错。

SP不能用于寄存器间接寻址mov ax,[si][di] 对mov ds,ss 错。

段寄存器不能直接给段寄存器赋值mov al,ffh 错。

一个数字不是0—9的16进制数必须以0开始2.解答:ABCE3.解答:对。

存储器寻址方式中给出的是有效地址,也叫偏移地址题目:下面的XCHG指令中,语法不正确的有_____________。

A xchg al, dsB xchg bl, [bx]C xchg al, 0fhD xchg buf1, buf2E xchg bl,bh解答:XCHG指令中操作数可以是字、也可以是字节,可以在通用寄存器与通用寄存器或存储器之间对换数据,但不能在存储器与存储器之间对换数据。

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

1.6若机器字长为16位,其无符号数表示范围是多少?带符号数表示范围是多少?分别用十进制和十六进制表示。

答:无符号数:0~65535,0000H~FFFFH;带符号数:-32768~+32767,8000H~7FFFH1.9 写出下列算式的二进制运算结果,标志位CF、SF、ZF、OF分别是什么值?答:(1) 56+63=01110111B,CF=0,SF=0,ZF=0,OF=0(2) 83-45=00100110B,CF=1,SF=0,ZF=0,OF=0(3) -74+29=11010011B,CF=0,SF=1,ZF=0,OF=0(4) -92-37=01111111B,CF=1,SF=0,ZF=0,OF=12.9 8086CPU的地址线为20根,寻址空间为1MB。

最少可划分为多少个逻辑段?最多呢?答:最少划分为16个逻辑段,最多划分为65536个逻辑段(每段16个字节)2,18 已知堆栈区大小为512字节,栈底单元的物理地址为15230H。

将两个字入栈保存后,当前栈指针所指单元的物理地址是多少?堆栈区中还能保存多少个数据?答:当前栈指针所指单元的物理地址是1522CH。

堆栈区中还能保存254个字。

2.21 在DEBUG下,要将寄存器CX的值修改为100H,应该执行什么命令?答:执行R CX,然后输入1002.22 在DEBUG下,怎样将数据段的0号~4号字节单元填入'a'、'b'、'c'、'd'?答:执行E DS:0 ?a? ?b? ?c? ?d?3.8 根据题目要求,写出相应的汇编指令:(1)把BX寄存器的值传送给AX(2)将立即数15送入CL寄存器(3)用BX寄存器间接寻址方式将存储单元中的字与AX寄存器的值相加,结果在 AX中(4)把AL中的字节写入用基址变址寻址的存储单元中(5)用SI寄存器和位移量VALUE的寄存器相对寻址方式,从存储单元中读出一个字送入寄存器AX(6)将AX中的数与偏移地址为2000H存储单元的数相减,结果在AX中答:(1) MOV AX,BX (2) MOV CL,15 (3) ADD AX,[BX](4) MOV [BX+SI],AL (5) MOV AX,VALUE[SI](6) SUB AX,DS:[2000H]3.10 在数据寻址方式中,哪种寻址方式的操作数与指令一起存放在代码段?答:立即寻址方式中操作数(立即数)和指令一起存放在代码段中。

4.24 编程序。

将键盘输入的小写字母变为大写字母显示在屏幕上。

答:.model small.codestart:mov ah,1 ;键盘输入int 21hsub al,20h ;变为大写mov dl,almov ah,2int 21hmov ah,4chint 21hend start4.25 X和Y都是字节型数据,编写将两数相加的结果显示出来的程序段。

答:.model small.datax db 12hy db 34h.codestart:mov ax,@datamov ds,axmov al,xadd al,y ;结果为46Hmov ah,al ;AH=46Hand al,0fh ;AL=06Hmov cl,4rol ah,cl ;AH=64Hand ah,0fh ;AH=04Hadd ax,3030h ;AX=3436Hmov bx,axmov dl,bh ;显示4mov ah,2int 21hmov dl,bl ;显示6int 21hmov ah,4chint 21hend start4.26 编写程序,建立一个0~9的平方根表,查表可得某数的平方根。

答:data segmentx db'0.000','1.000','1.414','1.732','2.000'db'2.236','2.449','2.646','2.828','3.000' ;建立字符表y db 5 dup(?) ;存放查到平方根u db 3 ;要查的数data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axmov al,u ;要查的数mov cl,5mul cl ;u*5=15(号单元开始)mov ah,0mov bx,ax ;地址保存到bxmov si,0let1:mov al,x[bx] ;取出平方根数字mov y[si],al ;存入yinc siinc bxloop let1 ;循环取出5次mov ah,4chint 21hcode endsend start4.30 用简化的程序格式编程序,在屏幕的5行12列上显示红底白字的字符串“Come”(作业本,仿例4-7)5.11 已知(BX)=7890H,写出指令实现逻辑左移2位。

请问哪个标志位改变了?答:进位标志CF=1 5.15 写出将AL.4清零的指令。

(AL中除第4位外的其他位保持不变)。

答:AND AL,11011111B5.29 字数组M中有10个数据,分类统计其中正数、负数、0的个数,分别存入POSI、NEGA、ZERO 单元。

答:DATA1 SEGMENTM DW 21,-34,32,112,-324,0,76,0,48,50POSI DW ?NEGA DW ?ZERO DW ?DATA1 ENDSCODE1 SEGMENTASSUME CS: CODE1,DS:DATA1START: MOV AX,DATA1MOV DS,AXMOV CX,10LEA SI,MAGAIN: CMP WORD PTR [SI],0JL LOWERJE EQUALINC POSIJMP LPP1LOWER: INC NEGAJMP LPP1EQUAL: INC ZEROLPP1: ADD SI,2DEC CXJNZ AGAINMOV AH,4CHINT 21HCODE1 ENDSEND START6.11 写出下列程序段的执行结果。

BUFF DB 10,22,14,6,31TOTAL DB ?……MOV BX,OFFSET BUFFMOV CX,TOTAL-BUFFMOV AL,0AA1: ADD AL,[BX]INC BXLOOP AA1MOV TOTAL,AL 答:累加和TOTAL=836.12 分析下列程序段的功能。

X DB 2,-3,15,0,9,4……LEA BX,XMOV CX,6MOV AX,0AA2:MOV AL,[BX]CMP AL,0JNE NEXTINC AHNEXT:INC BXLOOP AA2答:循环统计X中0的个数7.10 为什么要进行现场保护?怎样做现场保护?答:(1)在编写子程序时要注意一个问题,如果主程序用到某些寄存器保护数据,转到子程序后,这些寄存器有可能被改写,或者某些指令必须用特定的寄存器,如乘法、除法指令必须用AX或AL,循环和移位指令必须用CX或CL;还有一些场合需要保存标志寄存器的内容等。

因此在进入子程序时,先要把这些寄存器保存起来,称为现场保护。

(2)一般采用PUSH指令入栈保存的方法。

在子程序返回主程序之前,将堆栈中保存的内容用POP指令弹出到相关的寄存器中,称为恢复现场。

7.12 阅读下列子程序,解释该程序的功能。

SUBR1 PROC NEARPUSH AXPUSH BXMOV AL,XADD AL,BLMOV Y,ALPOP BXPOP AXRETSUBR1 ENDP答:功能:两个字节数相加。

X和BL相加保存到Y。

7.13 解释下列子程序的功能。

SUBR2 PROC NEARMOV SI,0LET1: MOV AH,1INT 21HCMP AL,0DHJZ OUT1MOV KEY[SI],ALINC SIJMP LET1OUT1: RETSUBR2 ENDP答:功能:键盘输入的字符保存到KEY单元中,直到按回车为止。

7.14 给出下列子程序的功能和执行结果。

X DB 3AH……SUBR3 PROC NEARMOV AL,XMOV BL,10MOV DX,0LETE : MOV AH,0DIV BLMOV DL,AHPUSH DXCMP AL,0JNZ LETERETSUBR3 ENDP答:功能:将X单元中的十六进制3AH变为十进制入栈保存,AH中为余数。

先将0008H入栈,再将0005H入栈,结果为58。

8.7 请举例说明宏的变元是操作数和变元是操作码的用法。

(P174 P175)8.9 在宏定义中可以使用标号吗?是否需要说明?8.16 分析下列宏定义,指出它的作用。

EXM1 MACRO X1MOV AH,X1INT 21HENDM答:宏的作用:DOS功能调用。

功能号用哑元指出。

8.17 解释下列宏的功能。

EXM2 MACRO A,B,CMOV AX,AADD AX,BMOV C,AXENDM答:宏的作用:两个操作数相加,结果保存在第3个数中。

8.18 指出下列宏的作用。

EXM3 MACRO C1MOV AH,2MOV DL,C1INT 21HENDM答:宏的作用:DOS的2号显示功能。

8.19 分析下列宏,指出它的作用。

EXM4 MACRO A1,A2VALUE DW A1 DUP(A2)ENDM答:宏的作用:定义VALUE数组,数组长度和初值由哑元指出。

8.20 下列宏是一个分支程序,宏定义中缺少标号的处理。

请添加,并指出宏的功能。

EXM5 MACRO B1,B2MOV AL,B1SUB AL,B2JNS LETT1NEG ALLETT1:RETENDM答:缺少标号定义LOCAL LETT1。

宏的作用:两个哑元相减,结果为负则求补。

9.2 硬件中断发生时,CPU怎样获知?CPU如何处理硬件中断?9.4 什么是中断向量?什么是中断向量表?80X86系统的中断向量表在哪儿?答:(1)在每个中断类型相对应的中断处理子程序都有一个入口地址,即该中断子程序第1条指令的逻辑地址,该入口地址称为中断向量。

(2)用于保存所有的中断向量。

(3)P200图9-1*9.5 80X86系统可以有多少个中断类型?中断类型号是如何划分的?答:(1)80X86系统提供了256个中断类型(可用1字节表示),类型号为0-FFH(2)中断类型代表了不同的中断源,而系统对中断类型的分配按照一定的规则划分,即0-4号为内;中断,5号为用户访问中断;8-0FH号为8259A中断控制器控制的8个硬件中断;10H-1AH号为BIOS基本输入/输出系统专用;1BH、1CH号为用户访问中断;20H-27H号为DOS中断;40-5F、67-77、BD-FF为硬盘参数、系统BASIC等。

相关文档
最新文档