文档详情

汇编语言3讲解.ppt

发布:2017-04-18约1.65千字共43页下载文档
文本预览下载声明
第 3 章;硬指令和伪指令;3.1 语句格式; MOV CX,0 ;传送指令,具有2个操作数 DELAY: NOP ;空操作指令,没有操作数,带有标号 LOOP DELAY ;循环指令,标号DELAY说明转移位置 BUFFER DB 1,2,3,4,5,6,7 ;数据定义伪指令,在主存中开辟7个连续的字节单元,初值依次为1~7,BUFFER表示首地址;标号、名字与标识符;保留字;3.2 参数、变量和标号;变量定义伪指令;变量名;初值表;变量定义伪指令助记符;定义字节单元伪指令DB;data segment ;数据段 X db a,-5 db 2 dup(100),? Y db ABC data ends;mov al,X ;此处X表示它的第1个数据,故AL←a dec X+1 ;对X为始的第2个数据减1,故成为-6 mov Y,al ;现在Y这个字符串成为 aBC;定义字单元伪指令DW;data segment ;数据段 count dw 8000h,?,AB maxint equ 64h number dw maxint array dw maxint dup(0) data ends;字变量和字常量的定义: WNUM EQU 5678H ;定义WNUM为常量 COUNT DW 20H ;定义COUNT变量,假设在数据段的偏移地址为10H 字变量和字常量的应用: MOV AX,[BX+SI+WNUM] ; MOV AX,[BX+SI+5678H] MOV AX,COUNT ; MOV AX,[0010H] MOV AX,[SI+COUNT] ; MOV AX,COUNT[SI] ; MOV AX,[SI+10H] LEA BX,COUNT ; LEA BX,[0010H] MOV BX,OFFSET COUNT ; MOV BX,0010H;定义双字单元伪指令DD;其他数据单元定义伪指令;定位伪指令;操作数与参数;注释;分隔符;汇编语言源程序的组成原则;汇编语言源程序;;lt301b.asm(文件名) stack segment stack ;定义堆栈段 dw 512 dup(?) ;堆栈段有512字(1024字节)空间 stack ends ;堆栈段结束 data segment ;定义数据段 string db ’Hello, Everybody !’,0dh,0ah,’$’ data ends code segment ’code’ ;定义代码段 assume cs:code,ds:data,ss:stack start: mov ax,data ;建立DS段地址 mov ds,ax; mov dx,offset string mov ah,9 int 21h mov ax,4c00h int 21h ;利用功能调用返回DOS code ends ;代码段结束 end start ;汇编结束,同时指明程序起始点;;SampleB.ASM stack segment stack dw 512 dup(?) stack ends data segment ... ;在数据段定义数据 data ends code segment ’code’ assume cs:code,ds:data,ss:stack start: mov ax,data mov ds,ax ... ;在代码段填入指令序列 mov ax,4c00h int 21h ... ;子程序代码 code ends end start;汇编语言程序的开发过程;开发过程1:源程序的编辑;开发过程2:源程序的汇编;开发过程3:目标模块的连接;汇编和连接的依次自动实现;开发过程4:可执行程序的调试;数值表达式;运算符;算术运算符;逻辑运算符;移位运算符;关系运算符;高低分离符;操作符的优先级;Take a Break
显示全部
相似文档