《2022年2022年汇编语言程序设计复习 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编语言程序设计复习 .pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、知识点第一章 基础知识(1 )正负数的补码表示 , 掌握计算机中数和字符的表示;eg. 假设机器字长为 8 位,+3 补 = B,-3 补= H 。十六进制数0F8H 表示的十进制正数为,表示的十进制负数为。8 位二进制数被看成是带符号补码整数时,其最小值是,最大值是。计算机处理问题中会碰到大量的字符、符号,对此必须采用统一的二进制编码。目前,微机中普遍采用的是码,称为美国码。第二章 80 x86 计算机组织(1) 中央处理机 CPU 的组成和 80 x86 寄存器组 , 重点:专用寄存器,段寄存器eg: IP 寄存器中保存的是? FLAGS 标志寄存器中共有几位条件状态位,有几位控制状态位,
2、标志寄存器分为哪2 类?哪个标志位用来控制可屏蔽中断请求是否被CPU 响应。键盘 I/O 、显示 I/O 和打印 I/O 分别对应16、10和17号中断。(2)存储单元的地址和内容,存储器地址的分段,实模式下逻辑地址、物理地址的表示。eg. 如果 SS=6000H ,说明堆栈段起始物理地址是_。已知字节(00018H )=14H ,字节(00017H )=20H ,则字(00017H )为_。如果数据段中一个内存单元对应的物理地址为3F756H , (DS )=3F00H ,那么使用 DS段寄存器指明该单元的段基值时,需要使用哪一个偏移量才能正确访问该单元 _。第三章 80 x86 的指令系统
3、和寻址方式与数据有关的寻址方式(立即寻址方式,寄存器寻址方式,直接寻址方式,寄存器间接寻址方式, 寄存器相对寻址方式, 基址变址寻址方式, 相对基址变址寻址方式)和与转移地址有关的寻址方式(段内直接寻址,段内间接寻址,段间直接寻址, 段间间接寻址 ) 。数据传送指令( 通用数据传送指令 、累加器专用传送指令)、算术指令( 加法指令 、减法指令 (*加减指令对4 个标志位的影响of,cf,sf,zf) 、乘法指令 (*乘法指令的要求:目的操作数必须是累加器)、除法指令(*被除数在累加器中,除法指令执行完以后,商和余数?) ) 、逻辑指令(逻辑运算指令 (*XOR,AND,OR,TEST 指令及指
4、令执行后对标志位的影响) 、移位指令) 、 串处理指令(与 REP 相配合工作的 MOVS 、STOS 、LODS 指令,与 REPE/REPZ和 REPNE/REPNZ联合工作的 CMPS 、 SCAS 指令) 、 控制转移指令(无条件转移指令、条件转移指令 、循环指令 、子程序、中断)。eg. 【习题 3.8 】假定 (DS)=2000H,(ES)=2100H, (SS)=1500H, (SI)=00A0H,(BX)=0100H,(BP)=0010H,数据段中变量名 VAL 的偏移地址为 0050H ,试指出下列名师资料总结 - - -精品资料欢迎下载 - - - - - - - - -
5、- - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 源操作数字段的寻址方式是什么?其物理地址值是多少?(1) MOV AX, 0ABH (2) MOV AX, BX (3) MOV AX, 100H (4) MOV AX, VAL (5) MOV AX, BX (6) MOV AX, ES:BX (7) MOV AX, BP (8) MOV AX, SI (9) MOV AX, BX+10 (10) MOV AX, VALBX (11) MOV AX, BXSI (12) MOV AX, VALBXSI 假定
6、 (DS )= 1000H, (SS )= 2000H , (SI)= 3000H , (BX )= 0100H , (BP )= 0200H ,数据段中变量名为OVAR 的偏移地址值为 0050H ,请指出下列源操作数的寻址方式是什么?其物理地址值是多少?1. MOV DX, 1000H 2. MOB DX, BX 3. MOV DX, OVARBP 4. MOV DX, BX+SI 5. MOV DX, OVARBXSI 将首地址为 STRING 的字节数组的第 7 个元素 ( 编号从 0 开始) 送到累加器 AL中,用 SI 寄存器相对寻址的指令为:和。下列ASCII码串( 包括空格符
7、) 依次存储在起始地址为 CSTRING 的字节单元中:CSTRING DB BASED ADDRESSING请编写指令将字符串中的第1 个和第 7 个字符传送给 DX寄存器。如果 JMP指令采用段间间接寻址, 那么转移地址存放在4 个相邻字节单元中, 其中前两个字节存放的是,而后两个字节存放的是。重复前缀指令 REP的重复次数由决定。在串操作指令前使用重复前缀指令REPE ,终止串的重复操作条件是或当标志位 =1时表示无符号数运算产生溢出,而当标志位 =1是表示带符号数运算产生溢出。AL和 VAR 字节单元中分别存放一个带符号数, 执行 CMP AL, VAR时, 如果 ALVAR ,那么溢
8、出位和符号位的关系是。循环控制指令 LoopNZ/LoopNE控制循环继续执行的条件是_。阅读下面的程序片段,并分析执行结果。MOV AX ,723AH MOV BX ,0C86BH SUB AL ,BL SBB AH,BH XOR AL,01H ADC AX,0 执行该程序片段后:(AX )= ,CF = ,OF = 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 第四章 汇编语言程序格式伪操作 :数据定义及存储器分配伪操作
9、,表达式赋值伪操作EQU ,段定义伪操作、程序开始和结束伪操作 、对准伪操作、基数控制伪操作。汇编语言程序格式: 汇编语言源程序中的每个语句的组成格式:名字项、操作项(包括?)、操作数项 和注释项eg. 在某数据段内定义变量BUFFER DB 30 DUP (20) 表达式 TYPE BUFFER 的值为。设某数据段:DATA SEGMENT ORG 20H NUM1=8 NUM2=NUM1+10H DA1 DB COMPUTERDB 0AH ,0DH COUNT EQU $-DA1 DA2 DW CO , MP , UT ,ER DATA ENDS 请回答: (1)DA1的偏移地址是:。(2
10、)COUNT 的值是。(3)DA2+5 字节单元的内容是。执行下列指令序列后, AX寄存器中的内容是什么?TABLE DW 10,20,30,40,50 ENTRY DW 3 MOV BX , OFFSET TABLE ADD BX , ENTRY MOV AX , BX 第五章 循环与分支程序设计循环程序结构,分支程序结构eg. 阅读如下程序段:ADRR DB XXH,XXH , XXH NUM EQU -ADRR RETT DB ?MOV CX ,NUM MOV BX ,-1 DON :INC BX CMP ADRRBX ,0 名师资料总结 - - -精品资料欢迎下载 - - - - -
11、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - LOOPZ DON JNZ NEXT MOV BL ,OFFH NEXT :MOV RETT,BL HLT 请回答( 1)该程序完成的功能是什么?(2)程序执行后 RETT字节单元中的内容是什么?4.STRING DB ABCDEFGHIJ MOV AH,01 ;从键盘输入字符 1-9 INT 21H AND AL ,0FH DEC AL XOR AH ,AH MOV BX ,OFFSET STRING ADD BX ,AX MOV BL ,
12、BX MOV AH ,02H ;显示输出INT 21H 请回答 : (1)上述程序段的功能是什么?从键盘输入字符 4 ,程序段有什么结果?阅读程序段:BLOCK DB 20H ,1FH ,08H ,81H ,OFFH RESULT DB ?START :LEA SI,BLOCK MOV CX ,SI INC SI MOV AL ,SI LOP1 :CMP AL ,SI+1 JNG NEXT MOV AL ,SI+1 NEXT :INC SI LOOP LOP1 MOV RESULT,AL 问:( 1)该程序完成的功能是。(2)该程序循环的次数是。下列程序片段用来分别统计ARRAY 数组中奇数和
13、偶数的个数。请在空白处填写合适的指令。 DATA SEGMENT 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - ARRAY DW 23ABH ,1570H ,567,1765H ,46,5210H COUNT EQU ($-ARRAY )/2 DA1 DB ? DA2 DB ? DATA ENDS LEA SI,ARRAY MOV CX,COUNT LOP1 :MOV AX ,SI JZ LOP2 INC BL JMP LOP
14、3 LOP2 :INC BH LOP3 : DEC CX JNZ LOP1 MOV DA1 ,BL MOV DA2 ,BH编程实现:习题 5.3 ,5.23 判断寄存器 AH和 AL中第 3 位是否相同,如相同, AH置 0,否则 AH置全 1。实现下列算式: W=X+Y+36-Z 。设 X、Y、Z、W均为双字长数据,各自的低十六位数和高十六位数分别存放在X、X+2、Y、Y+2、Z、Z+2的存储单元中,结果的低十六位字和高十六位字分别存放在W和 W 2 两个单元中。写出执行以下计算的指令序列,其中U 、V、W和 Z 均为存放 16 位带符号数单元的地址。ZW-(U+6)-(V+9) 试编写一程序段求出双字长数的绝对值。双字长数在 A和 A+2单元中,结果存放在 B和 B+2单元中。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -