第一章汇编语言基础 1.1什么是汇编语言? 1.2汇编语言与机器语言的联系和区别? 1.3什么是真值、机器码、原码、反码、补码、ASC码? 1.4将下列二进制数转换为八进制和十六进制数: 10111101B01100010B11010110B011011011010111010B 1.5请将下列十进制数转换为十六进制数 19,35,543,7869,192,80 1.6请将下列十六进制数转换为十进制数。 2AH DCH 6B6H OFCADH 44FDH 1.7将下列带符号数用补码表示: 设n=8,-5FH,0F5H,-76H,-4CH,0FFH: n=16,-69ADH,-3E8DH,-5FH,-76H,F5H 1.8设以下各数均为有符号数的补码表示,请比较它们的大小 3456H和0BA52H,80H和79H,8000H和0 FFFFH,72H和82H 1.9如果将以上个对数均看做无符号数,请比较它们的大小 1.10说明数字和大小写字母的ASCl码的特点
第一章 汇编语言基础 1.1 什么是汇编语言? 1.2 汇编语言与机器语言的联系和区别? 1.3 什么是真值、机器码、原码、反码、补码、ASCII 码? 1.4 将下列二进制数转换为八进制和十六进制数: 10111101B 01100010B 11010110B 011011011010111010B 1.5 请将下列十进制数转换为十六进制数 19,35,543,7869,192,80 1.6 请将下列十六进制数转换为十进制数。 2AH DCH 6B6H 0FCADH 44FDH 1.7 将下列带符号数用补码表示: 设 n=8,‐5FH,0F5H,‐76H,‐4CH,0FFH; 设 n=16,‐69ADH,‐3E8DH,‐5FH,‐76H,F5H 1.8 设以下各数均为有符号数的补码表示,请比较它们的大小 3456H 和 0BA52H,80H 和 79H,8000H 和 0FFFFH,72H 和 82H 1.9 如果将以上个对数均看做无符号数,请比较它们的大小 1.10 说明数字和大小写字母的 ASCII 码的特点
第二章8086微处理器 2.1说明8086CPU的组成结构及其寄存器的组成 2.2数值加法器和地址加法器的区别? 2.3存储器地址的分段技术原理,以及寄存器的类型? 2.4存储器物理地址的生成方法,如何查看和修改段内存储单元的内容? 2.5求下列各数与62AOH的差,并根据结果设置标志位SF,ZF,CF,OF的值 (1)1234H(2)4231H(3)CFA0H(4)9D60H 2.6求下列各数与4AE0的差,并根据结果设置标志位SF,ZF,CF,OF的值 (1)1234H(2)5D90H(3)9090H(4)EA04H 2.7有两个16位字2E5CH和6A7BH分别存放在数据段的2000H和2003H的存储单元中,画 图表示出它们在存储器里的存放情况。 2.8存储器中数据存放如图所示,请读出30022H和30024H字节单元的内容,以及30021H 和30022字单元的内容。 地址 内容 30020 78 30021 56 30022 34 30023 12 30024 12 2.9请问段地址和偏移地址为3017:0004的存储单元的物理地址是多少?如果段地址偏移地 址变为3015:002A和3010:007A时,物理地址又是多少? 2.10一个16字长的数据区,它的起始地址为70A0H:DDF6,请写出这个数据区首末字单元 的物理地址。 2.11如果一个程序段开始执行前,(CS)=0B7F0H,(IP)=2B40H,试问该程序段的第一个字 单元的物理地址是什么? 2.12如果一个堆栈从地址1250:0000开始,它的最后一个字的位移地址为0100H,SP的内容
第二章 8086 微处理器 2.1 说明 8086CPU 的组成结构及其寄存器的组成 2.2 数值加法器和地址加法器的区别? 2.3 存储器地址的分段技术原理,以及寄存器的类型? 2.4 存储器物理地址的生成方法,如何查看和修改段内存储单元的内容? 2.5 求下列各数与 62A0H 的差,并根据结果设置标志位 SF,ZF,CF,OF 的值 (1)1234H (2)4231H (3)CFA0H (4)9D60H 2.6 求下列各数与 4AE0 的差,并根据结果设置标志位 SF,ZF,CF,OF 的值 (1)1234H (2)5D90H (3)9090H (4)EA04H 2.7 有两个 16 位字 2E5CH 和 6A7BH 分别存放在数据段的 2000H 和 2003H 的存储单元中,画 图表示出它们在存储器里的存放情况。 2.8 存储器中数据存放如图所示,请读出 30022H 和 30024H 字节单元的内容,以及 30021H 和 30022 字单元的内容。 内容 78 56 34 12 12 2.9 请问段地址和偏移地址为 3017:000A 的存储单元的物理地址是多少?如果段地址偏移地 址变为 3015:002A 和 3010:007A 时,物理地址又是多少? 2.10 一个 16 字长的数据区,它的起始地址为 70A0H:DDF6,请写出这个数据区首末字单元 的物理地址。 2.11 如果一个程序段开始执行前,(CS)=0B7F0H,(IP)=2B40H,试问该程序段的第一个字 单元的物理地址是什么? 2.12 如果一个堆栈从地址 1250:0000 开始,它的最后一个字的位移地址为 0100H,SP 的内容 地址 30020 30021 30022 30023 30024
为0052H,问 (1)栈顶地址是多少? (2)栈底地址是多少? (3)在SS中的段地址是多少? (4)存入数据3445后,SP的内容是多少? 2.13己知(SS)=0FFA0H,(SP)=00B0H,先执行两条把数据8057H和0F79H分别进栈的PUSH 指令,再执行一条POP指令。试画出堆栈区和SP的内容变化过程示意图(标出存储单元的 物理地址)
为 0052H,问 (1)栈顶地址是多少? (2)栈底地址是多少? (3)在 SS 中的段地址是多少? (4)存入数据 3445 后,SP 的内容是多少? 2.13 已知(SS)=0FFA0H,(SP)=00B0H,先执行两条把数据 8057H 和 0F79H 分别进栈的 PUSH 指令,再执行一条 POP 指令。试画出堆栈区和 SP 的内容变化过程示意图(标出存储单元的 物理地址)
第三章寻址方式 3.1分别指出下列指令中源操作数和目的操作数的寻址方式。 (1)MOV SI,1000 (2)MOV DI,[SI] (3)ADD AX,4[BX] (4)SUB AX,5[BX+DI] (5)MOV [DI+2],AX (6)MOV SI,[100o] (7)ADD [SI],SI (8)ADD AX,-7[BP+DI] 3.2现有(DS)=2000H,(BX=0100H,(SI=0002H,(20100)=12H,(20101)=34H,(20102)=56H, (20103)=78H,(21200)=2AH,(21201)=2BH,(21202)=2CH,(21203)=2DH,试说明下列各条指令执行 后AX寄存器的内容 (1)MOV AX,1200H (2)MOV AX,BX (3)MOV AX,[1200H (4)MOV AX,[BX] (5)MOV AX,1100[BX] (6)MOV AX,[BX][SI] (7)MOV AX,1100[BX][SI] 3.3在CS:0624单元内有一条二字节JMP SHORT NEXT指令,如其中位移量为(1)35H, (2)4CH,(3)0C2H,试问转向地址NEXT的值是多少? 3.4给定(IP)=2BC0H,(CS)=0200H,位移量D=5119H,(BX)=1200H,(DS)=212AH,(224A0) 0600H,(275B9)=098AH,试为以下的转移指令找出转移的偏移地址。 (1)段内直接寻址 (2)使用BX及寄存器间接寻址方式的段内间接寻址。 (3)使用BX及寄存器相对寻址方式的段内间接寻址。 3.5假设(EAX)=9823F456H,(ECX)=1F23491H,(BX)=348CH,(SI)=2000H,(D1)=4044H。 在DS段中从偏移地址4044H单元开始的4个字节单元中,依次存放的内容为92H,6DH, OA2H和4CH,试问下列各条指令执行完后目的地址及其中的内容是什么: (1)MOV [SI],EAX (2)MOV [BX],ECX (3)MOV EBX,[DI] (4)MOV EAX,ECX 3.6阅读下列程序,指出程序执行结果,并画出存储空间图。 DATA SEGMENT
第三章 寻址方式 3.1 分别指出下列指令中源操作数和目的操作数的寻址方式。 (1)MOV SI,1000 (2)MOV DI,[SI] (3)ADD AX,4[BX] (4)SUB AX,5[BX+DI] (5)MOV [DI+2],AX (6)MOV SI,[1000] (7)ADD [SI],SI (8)ADD AX,‐7[BP+DI] 3.2 现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100)=12H,(20101)=34H,(20102)=56H, (20103)=78H,(21200)=2AH,(21201)=2BH,(21202)=2CH,(21203)=2DH,试说明下列各条指令执行 后 AX 寄存器的内容 (1)MOV AX,1200H (2)MOV AX,BX (3)MOV AX,[1200H] (4)MOV AX,[BX] (5)MOV AX,1100[BX] (6)MOV AX,[BX][SI] (7)MOV AX,1100[BX][SI] 3.3 在 CS:0624 单元内有一条二字节 JMP SHORT NEXT 指令,如其中位移量为(1)35H, (2)4CH,(3)0C2H,试问转向地址 NEXT 的值是多少? 3.4 给定(IP)=2BC0H,(CS)=0200H,位移量 D=5119H,(BX)=1200H,(DS)=212AH,(224A0) 0600H,(275B9)=098AH,试为以下的转移指令找出转移的偏移地址。 (1)段内直接寻址 (2)使用 BX 及寄存器间接寻址方式的段内间接寻址。 (3)使用 BX 及寄存器相对寻址方式的段内间接寻址。 3.5 假设(EAX)=9823F456H,(ECX)=1F23491H,(BX)=348CH,(SI)=2000H,(DI)=4044H。 在 DS 段中从偏移地址 4044H 单元开始的 4 个字节单元中,依次存放的内容为 92H,6DH, 0A2H 和 4CH,试问下列各条指令执行完后目的地址及其中的内容是什么: (1)MOV [SI],EAX (2)MOV [BX],ECX (3)MOV EBX,[DI] (4)MOV EAX,ECX 3.6 阅读下列程序,指出程序执行结果,并画出存储空间图。 DATA SEGMENT
W DB -128 X DB 127 Y DB-100 R DB0 Z DD 0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN:MOV AX,DATA MOV DS,AX MOV AL,X CBW MOV BX,AX MOV AL,W CBW SUB AX,BX MOV BL,10 IDIV BL MOV R,AH IMUL Y IMUL AX MOV WORD PTR Z,AX MOV WORD PTR Z+2,DX MOV AH,4CH INT 21H CODE ENDS END BEGIN
W DB -128 X DB 127 Y DB -100 R DB 0 Z DD 0 DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK BEGIN: MOV AX,DATA MOV DS,AX MOV AL,X CBW MOV BX,AX MOV AL,W CBW SUB AX,BX MOV BL,10 IDIV BL MOV R,AH IMUL Y IMUL AX MOV WORD PTR Z,AX MOV WORD PTR Z+2,DX MOV AH,4CH INT 21H CODE ENDS END BEGIN