华南农业大学汇编语言8086习题(附答案)_2
汇编语言设计复习题(第2章:8086的寻址方式和指令系统)
1、下列指令属于基址加变址寻址方式的是( MOV DX,DS:[BP][SI] )。
DX2、当程序顺序执行时,每取一条指令语句,IP指针增加的值是( D )。
DXA.1 B.2 C.3 D.由指令长度决定的3、下列属于合法的指令是( D ) DXA.MOV DS,ES B.MOV [SI],[DI] C.MOV AX,BL D.MOV [DI],BL4、若AX=349DH,CX=000FH。
则执行指令AND AX,CX后,AX的值是( 000DH )。
DX5、设DS=8225H,DI=3942H,指令NEG BYTE PTR[DI]操作数的物理地址是( 85B92H ) DX6、下列寄存器组中在段内寻址时可以提供偏移地址的寄存器组是( B ) DXA、AX,BX,CX,DXB、BX,BP,SI,DIC、SP,IP,BP,DXD、CS,DS,ES,SS7、对寄存器AX的内容乘以4的正确指令序列是( SHL AX,1 SHL,AX,1 )。
DX8、执行INC指令除对SF、ZF有影响外,还要影响的标志位是( OF,AF,PF )。
DX9、设DH=10H,执行NEG DH指令后,正确的结果是( DH=0F0H CF=1 )。
DX10、下列传送指令中有语法错误的是( A )。
DXA、MOV CS,AXB、MOV DS,AXC、MOV SS,AXD、MOV ES,AX11、下面指令执行后,改变AL寄存器内容的指令是( D )。
DXA、TEST AL,02HB、OR AL,ALC、CMP AL,BLD、AND AL,BL12、执行除法指令后,影响的标志位是( AF,CF,OF,PF,SF,ZF都不确定 )。
DX13、执行下面指令序列后,结果是( AX=0FF82H )。
DXMOV AL,82HCBW14、与MOV BX,OFFSET VAR指令完全等效的指令是( D )。
DXA、MOV BX,VARB、LDS BX,VARC、LES BX,VARD、LEA BX,VAR15、在段定义时,如果定位类型用户未选择,就表示是隐含类型,其隐含类型是( PARA )。
汇编语言期末试卷(B卷)
华南农业大学期末考试试卷(B卷)2005学年第2学期考试科目:汇编语言考试类型:(闭卷)考试时间:120 分钟学号姓名年级专业一、简答题(20分,每小题4分)1、Intel 8086/8088 CPU为程序员提供的8个16位的通用寄存器的名称分别是什么?2、下列指令中,源操作数是什么寻址方式 ? 操作数的物理地址如何表达 ?MOV AX , 10H [DI]MOV DX , [BX][SI]3 .下列语句在存储器中分别为变量分配多少个字节 ?①AD1 DW 10H DUP(?) , 10H②COUNT EQU 100③AD2 DB 3 DUP(2 DUP (3))④AD3 DD COUNT DUP(?)4.下列程序段完成什么功能?D1 DD 12345678HD2 DD 9ABCDEF0HD3 DD ?┆MOV DX,D1MOV AX,D1+2MOV BX,D2MOV CX,D2+2ADD AX,CXADC DX,BXMOV D3,AXMOV D3+2,DX┆5、对于这样的程序段:CMP AX,BXJAE NEXTXCHG AX,BXNEXT: CMP AX,CXJAE DONEXCHG AX,CXDONE: ┆试回答:①上述程序执行后,原有AX,BX,CX中最大数存放在那个寄存器?②这三个数是带符号数还是无符号数?二、程序填空(15分,每空3分)要求:在下划线上填写合适内容,使程序完成所要求的功能,不能增加语句行。
1、下面过程将BX的值以2进制形式显示出来p1 proc nearjmp beginbegin: push axpush cxpush dxmov cx,16rotate:jc onemov dl,30hjmp dispone: mov dl,31hdisp: mov ah,2int 21hloop rotatepop cxpop axint 20hp1 endp2、数据段地址LIST开始存储一组字数据,其中首元素为数组长度,下列程序删除数组中的“零”元素。
汇编语言练习题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分,共20分)1. 汇编语言是一种()。
A. 高级语言B. 低级语言C. 机器语言D. 符号语言答案:D2. 汇编语言程序必须经过()才能被计算机执行。
A. 编译B. 汇编C. 链接D. 解释答案:B3. 在汇编语言中,指令通常由()组成。
A. 操作码和操作数B. 操作码和地址码C. 操作码和数据D. 地址码和数据答案:A4. 汇编语言中的寄存器主要用于()。
A. 存储数据B. 存储指令C. 存储地址D. 存储控制信息答案:A5. 汇编语言中的立即寻址方式是指()。
A. 操作数在寄存器中B. 操作数在内存中C. 操作数在指令中D. 操作数在输入/输出端口中答案:C6. 在汇编语言中,指令“MOV AX, 1234H”的作用是()。
A. 将内存地址1234H的内容移动到AX寄存器B. 将立即数1234H移动到AX寄存器C. 将AX寄存器的内容移动到内存地址1234HD. 将AX寄存器的内容移动到另一个寄存器答案:B7. 汇编语言中的循环结构通常使用()指令实现。
A. JZB. JNZC. LOOPD. CALL答案:C8. 在汇编语言中,子程序调用通常使用()指令。
A. JZB. JNZC. CALLD. RET答案:C9. 汇编语言中的堆栈操作通常使用()指令。
A. PUSHB. POPC. MOVD. ADD答案:A10. 在汇编语言中,中断服务程序的结束通常使用()指令。
A. INTB. IRETC. RETD. CALL答案:B二、填空题(每题2分,共20分)1. 汇编语言中的指令通常由______和______两部分组成。
答案:操作码;操作数2. 汇编语言中的寄存器可以分为______、______和______三类。
答案:通用寄存器;段寄存器;控制寄存器3. 汇编语言中的寻址方式包括______、______、______和______等。
答案:立即寻址;直接寻址;间接寻址;寄存器寻址4. 在汇编语言中,指令“MOV AX, BX”的作用是将BX寄存器的内容______到AX寄存器。
汇编语言试题及参考答案
汇编语言试题及参考答案一、选择题(每题2分,共20分)1. 汇编语言中的指令通常由哪两部分组成?A. 操作码和操作数B. 地址和数据C. 指令和数据D. 操作码和地址答案:A2. 以下哪个不是汇编语言中的寻址方式?A. 直接寻址B. 间接寻址C. 立即寻址D. 寄存器寻址答案:B3. 在汇编语言中,以下哪个指令用于将数据从内存加载到寄存器中?A. MOVB. CMPC. ADDD. SUB答案:A4. 汇编语言中,以下哪个指令用于比较两个寄存器的内容?A. MOVB. CMPC. ADDD. SUB答案:B5. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与立即数相加?A. MOVB. CMPC. ADDD. SUB答案:C6. 汇编语言中的条件跳转指令通常使用哪些条件?A. 零、非零B. 正、负C. 溢出、非溢出D. 所有上述条件答案:D7. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容相减?A. MOVB. CMPC. ADDD. SUB答案:D8. 汇编语言中的循环结构通常使用哪种类型的跳转指令?A. 无条件跳转B. 条件跳转C. 直接跳转D. 间接跳转答案:B9. 在汇编语言中,以下哪个指令用于将一个寄存器的内容与内存中的内容相加?A. MOVB. CMPC. ADDD. SUB答案:C10. 汇编语言中,以下哪个指令用于将一个寄存器的内容与另一个寄存器的内容进行逻辑与操作?A. ANDB. ORC. NOTD. XOR答案:A二、填空题(每题2分,共20分)1. 在汇编语言中,指令MOV AX, BX的作用是将寄存器________的内容复制到寄存器________中。
答案:BX,AX2. 汇编语言中的指令JMP FAR PTR 100H:200H的作用是跳转到内存地址________。
答案:100H:200H3. 汇编语言中,指令CALL的作用是________。
汇编语言程序设计(第四版)第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答案,推荐文档
汇编语言程序设计试卷2答案注意:答案全部写在最后一张试卷纸上,要求表明题号,字迹清楚,答在试卷上不给分一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其号码填在题干后的括号内,每小题2分,共20分)1.十六进制数88H,可表示成下面几种形式,请找出错误的表示()。
(A) 无符号十进制数136(B) 带符号十进制数-120(C) 压缩型BCD码十进制数88(D) 8位二进制数-8的补码表示2.指令指针寄存器是()。
(A) IP(B) SP(C) BP(D) PSW3.当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是()。
(A) 表示结果中含1的个数为偶数(B) 表示结果中含1的个数为奇数(C) 表示该数为偶数(D) 表示结果中低八位含1的个数为偶数4.完成将累加器AL清零,并使进位标志CF清零,下面错误的指令是()。
(A) MOV AL,00H(B) AND AL,00H(C) XOR AL,AL(D) SUB AL,AL5.下列指令执行后总是使CF=0,OF=0的是()。
(A) AND(B) NEG(C) NOT(D) INC6.完成同指令XCHG AX,BX相同功能的指令或指令序列是()。
(A) MOV AX,BX(B) MOV BX,AX(C) PUSH AXPOP BX(D) MOV CX,AXMOV AX,BXMOV BX,CX7.设AH=0,AL=06H,BL=09H,执行指令ADD AL,BLAAA之后,其结果应是()。
(A) AH=01,AL=05(B) AH=1 AL=15(C) AH=0 AL=0FH(D) AH=0 AL=058.设AL=0B4H,BL=11H,指令“MUL BL”和指令“IMUL BL”分别执行后OF,CF的值为()。
(A) OF=1,CF=0(B) OF=1,CF=1(C) OF=0,CF=0(D) OF=0,CF=19.在串操作指令前使用重复前缀指令REPE,终止串的重复操作条件是()。
8086汇编语言程序格式习题及答案
8086汇编语⾔程序格式习题及答案第4章汇编语⾔程序格式习题练习题1 单项选择题1.下列选项中不能作为名字项的是(C)。
A.FH B.A3 C.3B D.FADC2.下列指令不正确的是()。
A.MOV AL,123 B.MOV AL,123QC.MOV AL,123D D.MOV AL,123H3.下列指令不正确的是()。
A.MOV BL,OFFSET A (偏移量16位)B.LEA BX,AC.MOV BX,OFFSET A D.MOV BX,A4.若定义“BUF DB 1,2,3,4”,执⾏MOV AL,TYPE BUF 后AL=()。
A.0 B.1C.2 D.35.若定义“A EQU 100”,执⾏“MOV AX,A”后,AX=()。
A.A的偏移地址B.A单元中的内容C.100 D.A的段地址6.若定义“B DW 1,2,10 DUP(0)”,则该伪指令分配()字节单元。
A.10 B.20 C.22 D.247.若定义“C DD 2,4”,则该伪指令分配()个字节单元。
A.2 B.4 C.6 D.88、伪指令是()规定的汇编说明符,它在源程序汇编时进⾏说明。
A、DEBUGB、LINKC、MASM(汇编程序)D、EDIT9.在上机操作过程中,MASM命令执⾏后,除了⽣成⼀个⽬标⽂件外,根据选择还可以⽣成⼀个()⽂件。
A..LST B..EXE C..MAP D..ASM10.LINK命令执⾏后可以⽣成⼀个以()为扩展名的⽂件。
A.ASM B.EXE C.OBJ D.COM11.⼀个段最⼤可定义()字节。
A.1M B.64K C.32K D.16K12.若要求⼀个段的起始位置能被256整除的单元开始,在定位⽅式选项中应选()。
A.BYTE B.WORD C.PARA D.PAGE(页)13.宏指令与⼦程序相⽐,在多次调⽤时,宏指令调⽤的⽬标程序长度⽐⼦程序调⽤的()。
A.相同B.长C.短D.不定14.宏指令与⼦程序相⽐,⼦程序调⽤的执⾏速度⽐宏指令的()。
华南农业大学微机原理课期末试题2 微机考试样题
一 填空题 (每空1分,共16分)1、若字长为8位,X =21,则[X]补= 15 H ,[-X]补= EB H 。
2、LEA SI ,BUF 的等价指令是 MOV SI,OFFSET BUF 。
3、8086CPU 的一个典型总线周期包括 4 个状态。
4、要组成容量为2K ×8位的RAM 存储器,如采用1024×4存储芯片,需要 4 片。
5、将8086寄存器AX 的低字节清零,高字节不变的一条指令是 AND AX FFO0H 。
6、CS =2000H ,IP =0100H ,则该单元物理地址为 20100H 。
7、若内存变量V AR 伪定义为: V AR DW 56ABH ,则执行指令MOV AL ,BYTE PTR V AR 后,AL 的内容是 ABH 。
8、将十六进制数(1AB.E)16(含小数点)转换为二进制数为 0001 1010 1011.1110 。
9、8086有两根外部中断申请引脚,它们是 INTR 和 NMI 。
10、单片8259A 可管理 8 级可屏蔽中断,8086CPU 中断类型码和对应的向量地址的变换表达式是 中断向量地址指针=4*中断类型码 。
11、并行接口芯片8255A 三种工作方式为: 0方式 、 1方式 和 2方式 。
二 判断题 (共12题,每题1分,共12分,正确的打“√”,错误的打“×”) 1、动态RAM 利用电容所存储的电荷来表示信息“0”和“1”,因此需要不断进行刷新。
(√ )2、8086可寻址访问的最大I/O 空间是32KB 。
(X )3、堆栈是由若干个连续存储单元组成的后进先出存储区。
(√)4、8086汇编语言中指令XLAT 执行后,寄存器BL 的内容就是待查的表元素的值。
(×)5、主存储器和CPU 之间增加高速缓冲存储器的目的是扩大主存储器的容量。
(×)6、8086采用专用输入和输出指令访问外设。
(√)7、波特率是串行通信的一项重要参数,波特率就是传送数据位的速率,用位/秒(bit/s )表示。
汇编语言复习题(2)
汇编语⾔复习题(2)汇编语⾔复习题第2章8086CPU寄存器的结构及使⽤1.8086CPU由指令执⾏部件EU和总线接⼝部件BIU两部分组成。
其中EU的功能是控制和执⾏指令,主要由算术逻辑部件ALU、EU控制部件、8个16位寄存器和⼀个标志寄存器FLAGS组成。
BIU的功能是从存储器预取指令和数据,以及所有EU需要的总线操作,实现CPU与存储器和外设间信息传递。
BIU由指令队列、指令指针寄存器、段寄存器、地址加器组成。
2.Intel8086CPU共有14个16位寄存器,它们分别是通⽤寄存器8个即AX、BX、CX、DX、SP、BP、SI、DI,其中能⽤作寄存器间接寻址的寄存有BX、BP、SI和DI,控制寄存器2个即IP、PSW,段寄存器4个即DS、SS、CS和ES它们的含义分别是:其中在编程过程中程序的段基值由汇编程序装⼊的段寄存器是SS和CS,由编程者⽤汇编指令将段基值装⼊的段寄存器是DS 和ES,其具体指令是MOV AX,数据段段/附加数据段名,MOV DS/ES,AX,编程⼈员不能⽤指令去取其值或给其设置给定值的寄存器是IP,但是可以通过某些指令的执⾏⽽⾃动修改其内容,如JMP NEXT指令的功能是将⽬的地址的偏移量送⼊IP。
3.PSW是程序状态字寄存器⼜称为标志寄存器,⽤来反映微处理器在程序运⾏时的某些状态,其中的6个状态标志位分别是OF、SF、ZF、AF、PF和CF,反映了刚执⾏完算术或逻辑运算指令后的某些特征。
三个控制标志位是DF即⽅向标志、IF即中断标志位和TF陷阱标志。
如两个8位的⼆进制数相加其状态标志位中各标志的值是多少?10110101+10011011。
4.8086CPU数据总线16根地址总线是20根能访问的最⼤存储空间是1MB。
第3章存储器的分段1.在8086CPU中存储器的编址原则是按字节编址即每⼀个字节单元是⼀个存储器地址,在源程序中⽤常⽤⼗六进制数或符号来表⽰⼀个存储单元的地址。
(汇编语言教程)5_80868088汇编语言-2
104H DUP(11H 104H DUP(11H)
DUP( DUP(0)
ENDS
ENDS DATA2 DATA2 SEGMENT PARA DB COMMON ‘DATA2’ DATA2 DATA N2 DATA2 DATA2 105H DUP( 105H DUP(0)
DATA2 DATA2 N1 DATA2 DATA2 END
默认值为: 默认值为:PARA
III、 III、组合类型
段名 SEGMENT [定位类型] [组合类型] [使用类型] [‘类别’] 定位类型] 组合类型] 使用类型] [‘类别 类别’ …… …… ; 语句序列 段名 ENDS
PRIVATE:私有段,不进行组合。 PUBLIC:
– 不同模块中的同为public属性的同名段连接组合成一个逻辑段。
3、过程定义伪指令
格式: 格式:过程名 [类型 类型] PROC [类型] … 过程体语句 RET 段名 ENDP PROC和ENDP是成对出现的 是成对出现的。 PROC和ENDP是成对出现的。 类型有近(NEAR)和远(FAR)两种, 类型有近(NEAR)和远(FAR)两种,若过程缺省 NEAR缺省 则属默认值。若为远过程, FAR不 缺省, 或NEAR缺省,则属默认值。若为远过程,则FAR不 能省略。 能省略。 过程名具有段地址、 过程名具有段地址、段内偏移量和类型三个属 性。
2、源程序开始和结束伪指令
程序开始伪指令
– NAME伪指令 NAME伪指令 – TITLE伪指令 TITLE伪指令
程序结束伪指令
– END
(1)程序开始伪指令NAME 程序开始伪指令NAME
NAME伪指令 NAME伪指令 格式: 格式:NAME 模块名 含义:表示一个模块的开始, 含义:表示一个模块的开始,并给出该模 块名。 块名。
汇编语言程序设计(第四版)第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)的连续区域中。
8086汇编语言习题解答
8086/8088汇编语言习题解答第一章1.1、试根据自己使用计算机的经历,列举几个必须使用或最好是使用汇编语言编制程序的事例。
1.2、试完成下列数制间的转换⑴、十进制数转换为8位二进制数十进制:100 对应二进制:01100100B十进制:56 对应二进制:00111000B十进制:111 对应二进制:01101111B十进制: 120 对应二进制:01111000B十进制: 70 对应二进制:01000110B⑵、8位二进制数(无符号数)转换为十进制数二进制:01010101B 对应十进制:85二进制:10101010B 对应十进制:170二进制:11110000B 对应十进制:240二进制:00001111B 对应十进制:15⑶、十进制数转换为十六进制数十进制:40 对应二进制:00101000B十进制:80 对应二进制:01010000B十进制:105 对应二进制:01101001B十进制: 114 对应二进制:01101101B十进制: 207 对应二进制:11001111B1.3、试把下面用补码表示的二进制数转换为对应的十进制真值二进制补码:01111000 对应的十进制值数真值:+120二进制补码:11011001 对应的十进制值数真值:-39二进制补码:10000001 对应的十进制值数真值:-127二进制补码:10001000 对应的十进制值数真值:-120二进制补码:00100111 对应的十进制值数真值:+39二进制补码:11110000 对应的十进制值数真值:-161.4、由键盘输入字符通常都是以该字符的ASCII码形式表示的。
若现在从键盘上输入十六进制数0~F,那么应如何处理才能把十六进制转换为4位二进制数0000~1111.答:将键盘输入的数0~F的ASCII码,每输入一个字符,减去30H后,再存入内存,这样就完成了把从键盘上输入的十六进制ASCII码转换为4位二进制数0000~1111.1.5、试分别判断下列各组数据中哪个数据最大?哪个最小?①、A=0.101B B=0,101D C=0,101H②、A=1011B B=1011D C=1011H答:第①组:A=1×21-+1×23-=0.625B=0.101C=1×161-+163-=0.0625+0.00024414=0.06274414 所以A最大,C最小第②组,B最大,A=B最小1.6、现有一个二进制数10110110.若将该数看着是无符号数、原码表示的带符号数、补码表示的带符号数,它对应的十进制数的真值是多少?答:10110110.的无符号数的十进制是:+182;10110110.的原码带符号数的十进制是:-5410110110.补码表示的带符号数的十进制是:+741.7、下列各组数据均为十进制数,先将各数据转换为补码表示的带符号数,然后用补码的加减运算分别完成下列各小题,并用十六进制数形式回答运算结果。
汇编语言补充复习题(含答案)
汇编语言补充复习题(含答案)汇编语言补充复习题一、简答题1、8086的指令格式由哪些部分组成?什么是操作码?什么是操作数?什么是寻址方式?2、8086/8088中有关操作数的寻址方式有哪几种?3、汇编语言程序应该由哪些逻辑段组成?各段的作用是什么?4、写出以下结构类定义语句的格式。
过程定义:段定义:5、简述标志寄存器各位的定义。
6、写出具有下列功能的伪指令语句:在DAl为首地址的存储单元中连续存放字节数据:2个54,5个‘A’, 10个(3,5)。
7、解释段基地址、逻辑地址、偏移地址、有效地址、物理地址的含义。
物理地址如何计算?(P35)教材P57,1~6教材P112,7~14教材P140,6~9,11教材P198,9(1)~(5)二、选择题1、若(AX)=0122H,4个标志位CF,SF,ZF,OF的初始状态为0,执行指令SUB AX,0FFFH 后,这4个标志位的状态是A、(CF)=0,(SF)=0,(ZF)=0,(OF)=0B、(CF)=0,(SF)=0,(ZF)=1,(OF)=1C、(CF)=1,(SF)=1,(ZF)=0,(OF)=0D、(CF)=1,(SF)=1,(ZF)=1,(OF)=12、当运算结果为0时,不能转向标号L1处的指令为A、JE L1B、JGE L1C、JNZ L1D、JAE L13、当程序结束要退回DOS时,在系统功能调用中,INT 21H指令前,先必须执行的指令是()。
AMOV AH,01H B、MOV AH,4CHC、MOV AH,02HD、MOV AH,09H4、DOS功能调用的子功能号应存放在()寄存器中A、AHB、ALC、DHD、DL5、比较两个同长度的字符串,全相等则转移到ST2的是()。
A、REPE CMPSBB、REPNE CMPSBJZ ST2 JZ ST2C、REP MOVSBD、REPNE MOVSBJZ ST2 JZ ST26、设ALPHA DW 7435H,396,8321,AUl DB 10 DUP(?)BETA DD 9543HCNT EQU BETA-ALPHA,则CNT的值为()。
汇编语言习题答案(2)
汇编语言习题答案(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。
汇编语言作业及参考答案-推荐下载
汇编语言作业答案1.3什么是汇编语言源程序、汇编程序、目标程序?见教材P41.10数码0~9、大写字母A~Z、小写字母a~z对应的ASCII码分别是多少?ASCII码为0Dh、0aH对应的是什么字符?见教材P81.11计算机中有一个“01100001‘编码,如果把它认为是无符号数,它是十进制什么数?如果认为它是BCD码,则表示什么数?又如果它是某个ASCII码,则代表哪个字符?97,61h,a1.13什么是DOS和POM-BIOS?DOS:磁盘操作系统;POM-BIOS:可编程的基本输入输出系统2.3 举例说明CF和OF标志的差异。
见教材P20-212.5 什么是8086中的逻辑地址和物理地址?逻辑地址如何转换成物理地址?请将如下逻辑地址用物理地址表达:(1)FFFFh:0 (2)40h:17h (3)2000h:4500h (4)B821h:4567h见教材P22-23 FFFF0h 417h 24500h BC777h2.6 8086有哪4种逻辑段,各种逻辑段分别是什么用途?见教材P232.10 说明下列指令中源操作数的寻址方式?如果BX=2000H,DI=40H,给出DX的值或有效地址EA的值。
(1)mov dx,[1234h] 直接寻址(2) mov dx,1234h 立即寻址(3) mov dx,bx 寄存器寻址(4) mov dx,[bx] 寄存器间接寻址(5) mov dx,[bx+123h] 寄存器相对寻址(6) mov dx,[dx+di] 基址变址寻址(7) mov dx,[bx+di+1234h] 相对基址变址寻址2.11 已知DS=2000H、BX=0100H、SI=0002H,存储单元[20100H]~[20103H]依次存放12 34 56 78H,[21200H]~[21203H]依次存放2A 4C B7 65H,说明下列每条指令执行后AX寄存器的内容。
(1)mov ax,1200h 1200h(2) mov ax,bx 0100h(3) mov ax,[1200h] 2a4ch(4) mov ax,[bx] 1234h(5) mov ax,[bx+1100h] 2a4ch(6) mov ax,[bx+si] 5678h(7) mov ax,[bx][si+1100h] b765h2.15 已知SS=FFAOH、SP=00B0H,画图说明执行下列指令序列时,堆栈区和SP的内容如何变化?mov ax,8057hpush ax SP=00B2 [00B1]=80hmov ax,0f79hpush ax SP=00B2 [00B2]=0f79hpop bx BX=0f79h SP=00B1pop [bx] SP=00B0h2.16给出下列各条指令执行后AL值,以及CF、ZF、SF、OF和PF的状态:mov al ,89h 不影响标志add al, al 见教材P38add al, 9dh 见教材P38cmp al, 0bch 见教材P40sub al, al 见教材P39dec al 见教材P39inc al 见教材P382.17设均为双字数据,分别存放在地址为的存储单元中,他们的运算结果存入单元。
华电汇编语言考试题及答案
华电汇编语言考试题及答案一、选择题(每题2分,共20分)1. 汇编语言中,以下哪个指令用于将数据从内存传输到寄存器?A. MOVB. CMPC. SUBD. JZ答案:A2. 在汇编语言中,以下哪个指令用于比较两个寄存器或内存位置的值?A. MOVB. CMPC. SUBD. JZ答案:B3. 8086微处理器中,以下哪个寄存器用于存储指令指针?A. AXB. BXC. CXD. IP答案:D4. 在汇编语言中,以下哪个指令用于将数据从寄存器传输到内存?A. MOVB. CMPC. SUBD. JZ答案:A5. 8086微处理器中,以下哪个寄存器用于存储标志寄存器?A. AXB. BXC. CXD. FLAGS答案:D6. 在汇编语言中,以下哪个指令用于无条件跳转?A. JMPB. JZC. JNZD. JC答案:A7. 8086微处理器中,以下哪个寄存器用于存储堆栈指针?A. AXC. SPD. IP答案:C8. 在汇编语言中,以下哪个指令用于条件跳转?A. JMPB. JZC. JNZD. JC答案:B9. 8086微处理器中,以下哪个寄存器用于存储数据段寄存器?A. AXB. BXC. DS答案:C10. 在汇编语言中,以下哪个指令用于乘法操作?A. MULB. DIVC. MODD. INC答案:A二、填空题(每题2分,共20分)1. 汇编语言中的指令格式通常包括操作码(Opcode)、操作数(Operand)和______。
答案:地址码(Address)2. 在8086微处理器中,用于存储代码段寄存器的是______。
答案:CS3. 汇编语言中的指令`MOV AX, 1234H`的意思是将立即数______传送到AX寄存器中。
答案:1234H4. 8086微处理器中的段寄存器包括CS、DS、SS和______。
答案:ES5. 汇编语言中的指令`CMP AX, BX`的意思是将AX寄存器和BX寄存器中的值进行______。
80868088汇编语言考试卷及答案
一.选择题(30)1.在一个8位二进制的机器中,-1的补码是AA.0FFH B.0FEH C.80H D.81H2.指令寄存器(IP)存放的是:____D____A.操作数B.操作码C.指令D.指令地址3.8088CPU的地址总线和数据总线分别是DA.16根和8根B.20根和16根C.16根和20根.D. 20根和8根4、5、6.用ASCII码(七位)表示字符5和7是__(1)_D_;按对应的ASCII值来比较__(2)_B; 二进制的十进制编码是___(3)_A.(1) A.1100101和1100111 B.10100011和01110111C.1000101和1100011D.0110101和0110111(2) A.“a”比“b”大 B。
“f”比“Q”大C.空格比逗号大 D。
“H”比“R”大(3)A.BCD码 B。
ASCII码 C。
机内码 D。
二进制编码7.在下列指令中,不影响堆栈内容的指令是__C_____A.PUSHB.RETC.JMPD.CALL8.中断向量地址是_B_____A.子程序入口地址B.中断服务子程序入口地址C.中断服务子程序入口地址指示器D. 剩余程序入口地址9.8088/8086工作于最大模式,是因为 CA.可以扩展内存空间B.可以扩大I/O空间C.可以构成多处理系统D.可以提高CPU主频10. 8088/8086 CPU要处理“1”号中断,其中断向量的地址在___D______A.00000H---00003HB.00001H-----00004HC.FFFF0HD.00004H----00007H11.执行串操作指令,MOVSB命令实行的操作是___B____A. (AX)←(BX)B.(DI)←(SI)C.(BX)←(BP)D.(BX)←(CX)12.汇编语言程序中的伪指令的功能是_____C___A.解释指令符号B.控制程序的执行C.控制汇编的执行D.仅给标号赋值13.可以直接存取64K字节内存的CPU地址线需要 AA.16 B。
华农汇编期末试卷test2(有答案版)
汇编语言2一、简答题1.CPU与各种I/O设备之间数据传送方式一般分为哪几种?DMA、中断传输、程序直接控制I/O2.字符串操作指令的目标串放在什么段中?ES:[DI]附加段3. 指出下面程序段完成的功能。
LEA BX,BUFMOV CX,10MOV AH,[BX]L1:CMP AH,[BX]JLE L2XCHG AH,[BX]L2:INC BXLOOP L1MOV NUMBER,AH求buf中的最小值,并放在NUMBER中4. A DB 0F8HB DB 3 DUP(?)┇LEA DI,BMOV CX,3MOV AL,ALOP:SAR AL,1MOV [DI],ALINC DILOOP LOP上述程序段运行后,从B单元开始依次存放的数据是多少?0FCH,0FEH,0FFH5.下面的程序段完成什么功能?MOV CH,4L:MOV CL,4ROL BX,CLMOV DL,BLAND DL,0FHCMP DL,10JB NEXTADD DL,7NEXT: ADD DL,30HMOV AH,2INT 21HDEC CHJNZ L把BX中的数以十六进制输出二、程序填空题设A,B两个变量都是10字节的无符号数,计算A+B->C1。
下面是代码段的内容,请填空。
LEA SI,ALEA DI,BLEA BX,C1MOV CX,10(1)CLCL::MOV AL,[SI](2)ADC AL,[DI]MOV [BX],ALINC SIINC DIINC BX(3) LOOP LMOV AL,0(4)ADC AL,0MOV [BX],ALMOV AH,4CH(5) INT 21H三、阅读程序1. 仔细阅读下面程序,说明该程序的功能。
DATA SEGMENTSOURCE_BUFFER DB 20 DUP(‘0’)DATA ENDSEXTRA SEGMENTDEST_BUFFER DB 20 DUP(?)EXTRA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:EXTRASTART: MOV AX,DATAMOV DS,AXMOV AX,EXTRAMOV ES,AXLEA SI,SOURCE_BUFFERLEA DI,DEST_BUFFERCLDMOV CX,20REP MOVSBRETMAIN ENDPEND START把source-buffer串的内容复制到dest-buffer串中2. 仔细阅读下面子程序,说明该子程序的功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
L2: inc up jmp L3
L3: inc di loop L
MOV AH,4CH INT 21H CODES ENDS END START
题目名称 实验二 程序结构与简单程序设计
题目关键字 简单程序设计
题目录入时 2013-4-1 22:45:55
间
一、实验目的
;输入 Y ;两数字相加
mov ah,9 lea dx,z int 21h
;显示"z="
mov ah,2 mov dl,cl add dl,30h int 21h
;显示结果
MOV AH,4CH INT 21H CODES ENDS END START
1.3.asm DATAS SEGMENT
array db 128 dup(41h,43h) up dw 0 down dw 0 DATAS ENDS
1. 掌 握 汇 编 语 言 源 程 序 结 构 。 2. 掌 握 汇 编 语 言 调 试 方 法 。
题目内容
二、实验要求 1.编 写 完 整 的 汇 编 语 言 程 序 : (1) 试 编 写 一 段 程 序 , 要 求 对 键 盘 输 入 的 小 写 字 母 用 大 写 字 母 显
示出来。 (2) 编 写 程 序 , 从 键 盘 接 收 一 个 小 写 字 母 , 然 后 找 出 它 的 前 导 字 母和后续字母,再按顺序显示这三个字符。 (3) 试 编 写 一 段 程 序 , 要 求 比 较 两 个 字 符 串 string1和 string2 所 含 字 符 是 否 相 等 , 如 相 等 则 显 示 “MATCH”, 若 不 相 同 则 显 示 “NO MATCH”. (4) 编 写 程 序 ,将 一 个 包 含 有 20 个 数 据 的 数 组 M 分 成 2 个 数 组 :正 数 数 组 P 和 负 数 数 组 N, 并 分 别 把 这 两 个 数 组 中 数 据 的 个 数 显 示 出 来。 2.在 DEBUG 下 查 看 程 序 执 行 的 过 程 , 以 及 变 量 值 的 变 化 。 3.演 示 程 序 运 行 结 果 , 请 指 导 教 师 检 查 。
lea di,String
mov ah,1 ;输入字母
int 21h
L:
inc di
;先 DI 自加 1,第一次就是‘a’的地址,不是‘z’
cmp al,[di] ;直到找到字母和输入的相匹配
jnz L
dec di
;推前成为前端字母的地址
mov cx,3 L2:
mov dl,[di] inc di mov ah,2 int 21h loop L2
题目创建人
题目注释
2.1.asm DATAS SEGMENT
crlf db 0ah,0dh,'$' DATAS ENDS
STACKS SEGMENT
STACKS ENDS
CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS
START: MOV AX,DATAS MOV DS,AX
三、思考 对输入的非字母字符如何处理? 2. 字 母 “a”和 “z”边 界 字 符 的 处 理 方 法 是 什 么 ? 3. 显 示 结 果 为 多 位 数 的 时 候 如 何 输 出 ?
四、提交内容 将 各 个 源 程 序 代 码 、 exe 文 件 , 思 考 题 的 WORD 文 档 压 缩 为 RAR 后 提 交到作业系统。
题目名称 实验一 汇编语言程序结构
题目关键字 源程序结构 debug
题目录入时 2013-3-13 22:45:26
间
题目内容
一、实验目的 1. 掌 握 汇 编 语 言 程 序 上 机 过 程 。
2. 掌 握 汇 编 语 言 结 构 。 3. 了 解 汇 编 程 序 、 连 接 程 序 、 DOS 系 统 装 入 和 返 回 功 能 。 4. 掌 握 用 DEBUG 调 试 汇 编 语 言 程 序 的 方 法 二、实验要求 1. 编 写 完 整 的 汇 编 语 言 程 序 : (1)逆 序 输 出 字 符 串 “BASED ADDRESSING”。 (2)从 键 盘 上 输 入 2个 一 位 的 正 数 , 求 出 它 们 的 和 ( 假 设 和 不 超 过 1 位 )。 (3) 试 编 写 一 段 程 序 ,要 求 在 长 度 为 10 0H 字 节 的 数 组 中 ,找 出 大 于 42 H 的 无 符 号 数 的 个 数 并 存 入 字 单 元 UP 中 ; 找 出 小 于 42H 的 无 符 号 数 的 个 数 并 存 入 字 单 元 DOWN 中 。 2.在 DEBUG 下 查 看 程 序 执 行 的 过 程 , 以 及 变 量 值 的 变 化 。 3.演 示 程 序 运 行 结 果 , 请 指 导 教 师 检 查 。 三、思考 1.汇编语言程序中语句 END 后的标号作用是什么? 2.采 用 标 准 序 结 构 编 制 源 程 序 , 用 ret 结 束 程 序 运 行 返 回 操 作 系 统 时 , 可 否 将 语 句 main proc far 中 的 far 属 性 去 掉 , 为 什 么 ? 3.一 个 段 的 大 小 为 多 少 ? 一 定 是 64KB 吗 ? 如 何 在 DEBUG 下 查 看 程 序在内存的存放情况?
CODES ENDS END START
1.2.asm DATAS SEGMENT
x db "x=$" y db "y=$" z db "x+y=$" DATAS ENDS
STACKS SEGMENT
STACKS ENDS
CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS
;能到这里说明都匹配 ;跳去 finally,避免顺序执行了 next
next: lea dx,answer2 mov ah,9 int 21h
;显示不匹配
finally: MOV AH,4CH INT 21H
CODES ENDS END START
2.4.asm DATAS SEGMENT
M db 5 dup(-1,1,2,3) P dw 0 N dw 0 DATAS ENDS
STACKS SEGMENT
STACKS ENDS
CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS
START: MOV AX,DATAS MOV DS,AX lea di,array mov cx,256
L: mov al,[di] cmp al,42h jl L1 ja L2
题目内容
二、实验要求 1.编 写 完 整 的 汇 编 语 言 程 序 : (1) 试 编 写 一 段 程 序 , 求 出 首 地 址 为 DATA 的 100D 字 数 组 中 的 最 小 偶 数 , 并 把 它 存 放 在 AX 中 。 (2) 编 写 一 段 程 序 , 从 键 盘 接 收 一 个 四 位 的 十 六 进 制 数 , 并 在 终 端 上显示与它等值的二进制数。 (3) 键 盘 上 输 入 一 系 列 以 $ 为 结 束 符 的 字 符 串 ,然 后 对 其 中 的 非 数 字 字符计数,并显示计数结果。 (4) 有 一 个 首 地 址 为 mem 的 10 0 个 字 的 数 组 ,试 编 制 程 序 删 除 数 组 中 所有为零的项,并将后续项向前压缩,最后将数组的剩余部分补上 零。 2.在 DEBUG 下 查 看 程 序 执 行 的 过 程 , 以 及 变 量 值 的 变 化 。 3.演 示 程 序 运 行 结 果 , 请 指 导 教 师 检 查 。
;输出 N
MOV AH,4CH INT 21H CODES ENDS END START
题目名称 实验三 分支程序设计
题目关键字 分支结构
题目录入时 2013-4-14 20:14:57
间
一、实验目的
1. 掌 握 汇 编 语 言 源 程 序 结 构 。 2. 掌 握 汇 编 语 言 分 支 结 构 程 序 设 计 方 法 。
mov cx,count1 lea si,string1 lea di,string2 L: mov al,[si] cmp al,[di]
;字符串长度 ;比较两个字符串的字符,如果不等就跳
jnz next inc si inc di loop L
lea dx,answer1 mov ah,9 int 21h jmp finally
STACKS ENDS
CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKS
START: MOV AX,DATAS MOV DS,AX mov cx,count ;循环次数 lea si,count-1 ;将最后一个字符‘G’的地址给 si
L: mov ah,2 mov dl,[si] dec si int 21h loop L MOV AH,4CH INT 21H
四、提交内容 将 各 个 源 程 序 代 码 、 exe 文 件 压 缩 为 RAR 后 提 交 到 作 业 系
统。
题目创建人
题目注释
1.1.asm DATAS SEGMENT
String db "BASED ADDRESSING" count dw $-String DATAS ENDS
STACKS SEGMENT
mov ah,1 int 21h
;输入数据会 AL
push ax ;将 AX 存进栈里
lea dx,crlf ;换行 mov ah,9 int 21h
pop dx
;栈里数据放进 DX,即将原先 AX 放进 DX