汇编语言程序的开发过程.pptVIP

  • 12
  • 0
  • 约2.64千字
  • 约 45页
  • 2017-04-24 发布于湖北
  • 举报
汇编语言程序的开发过程

编辑;§4.2汇编语言语句种类及格式;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;一、数据定义及存储器分配伪操作;地址表达式(只适用DW和DD两个伪指令) 如果该地址表达式为一变量(或标号)名,用DW伪指令则是取它的偏移地址来初始化变量,用DD伪指令则是取它的段首址和偏移地址来初始化变量。 例如: A DB ? B DB ? BUF1 DW A BUF2 DD B ;二、表达式赋值伪操作;二、表达式赋值伪操作;运算符—数值返回运算符;运算符—数值返回运算符(例);运算符—数值返回运算符;运算符—数值返回运算符(例);运算符—数值返回运算符;K1 DB 10H DUP(0) K2 DB 10H,20H,30H K3 DW 20H DUP(0,1,2 DUP(2)) K4 DB ‘ABCD’ …… MOV AL,LENGTH K1 ;AL=10H MOV BL,LENGTH K2 ;BL=1 MOV CX,LENGTH K3 ;CX=20H MOV DX,LENGTH K4 ;DX=1 MOV AL,SIZE K1 ;AL=10H MOV BL,SIZE K2 ;BL=1 MOV CL,SIZE K3 ;CL=40H MOV DL,SIZE K4 ;DL=1 ;运算符—属性修改运算符;运算符—属性修改运算符(例);运算符—THIS运算符;运算符—HIGH/LOW运算符;三、段定义伪操作 —段定位(align)属性;三、段定义伪操作 —段类别(class)属性;DA1 SEGMENT PARA ‘DATA’ DD1 DB 10 DUP(12H) DA1 ENDS STA1 SEGMENT STACK ‘STACK0’ DW 20H DUP(?) STA1 ENDS DA2 SEGMENT PARA ‘DATA’ DD2 DB 20H DUP(13H) DA2 ENDS STA2 SEGMENT STACK ‘STACK0’ DW 30H DUP(?) STA2 ENDS CODE SEGMENT …… CODE ENDS;三、段定义伪操作 —段寄存器的装入;三、段定义伪操作 —段寄存器的装入;三、段定义伪操作 —段寄存器的装入;五、地址计数器及对准伪操作;五、地址计数器及对准伪操作(例);程序结束返回的方法;Code segment assume cs:code,ds:data Start: mov ax,data mov ds,ax mov ah,4ch int 21h Code ends end start; cseg segment main proc far assume cs:cseg start: push ds ;初始化堆栈底 xor ax,ax push ax . . ;程序体 . ret main endp cseg ends end start ;七、处理器选择伪操作;;简单的汇编源程序(例1);实用程序设计例程 ;程 序;程 序;逻辑运算程序 ;程 序;BEGIN: MOV AX, DD1 ; 内务操作 MOV DS, AX MOV AX, ST1 MOV SS, AX MOV SP, TOP ;------------------------ 逻辑运算 ------------------------------ NOT A MOV AL, B OR AL, A ; (AL) = A + B MOV BL, C AND BL, D ; (BL) = C · D XOR AL, BL NOT AL MOV E, AL ; 结果在E中(85H

文档评论(0)

1亿VIP精品文档

相关文档