- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第04章节8086汇编语言程序的设计
第四章 8086汇编语言程序设计;几个概念;4.1 8086汇编语言的语句 ;4.2 8086汇编中的伪指令;
2、等号语句
格式: NUM=34
……
NUM=34+1
;二、变量定义语句
格式: 符号名 DB/DW/DD 表达式
;
1、定义一组数据
例1: BUFF DW 1234H, 0ABCDH, 8EH
DW –79DH, 7B6AH
2、定义一串字符
例2: STR DB ‘ Welcome !’
3、定义保留存储单元
例3: SUM DW ? , ?
;4、复制操作
复制操作符DUP(Duplication)可预置重复的数值
例4: ALL_ZERO DB 0,0,0,0,0
用复制操作可改为:
ALL_ZERO DB 5 DUP(0)
5、将已定义的地址存入内存单元
例5: LIT DD CYC
…
CYC: MOV AX , BX;三、段定义语句
1、 段定义语句格式:
段名 SEGMENT [定位类型] [组合类型] [‘类别’]
……
段名 ENDS
只需要掌握
段名 SEGMENT
……
段名 ENDS
;
2、段假设语句
ASSUME 段寄存器名:段名[,…]
3、?ORG伪指令、地址计数器 $
ORG伪指令格式: ORG 表达式
4、END 表示源代码结束
格式为: END 常数或表达式.
;四、过程定义语句
过程名 PROC NEAR/FAR
……
RET
过程名 ENDP;4.3 8086汇编中的运算符 ;3、关系运算符
EQ(相等)、NE(不等、)
LT(小于)、GT(大于)、
LE(小于等于)、GE(大于等于)。
关系成立,全1
关系不成立,全0
例: MOV DL , 10H LT 16
? MOV DL,0
例: AND AX , 555 GT 222
? AND AX,0FFFFH
; 二、 常用的操作符
4、分析操作符
1)SEG操作符
例: MOV AX , SEG BUFF
2)OFFSET操作符
例:MOV BX , OFFSET BUFF;3)TYPE操作符
对于变量有3种: 1 字节型;
2 字型;
4 双字型;
对于标号有2种:-1 NEAR(段内),
-2 FAR(段间)。
例: BUFF DB 20H
MOV BX ,TYPE BUFF ?
MOV BX,01
;
4)LENGTH操作符
5)SIZE操作符
SIZE=TYPE×LENGTH
例:BUFF DB 10DIP(?)
MOV CX,LENGTH BUF
? MOV CX,10
MOV CX,SIZE BUF
? MOV CX,20
;5、综合运算符(合成操作符)
功能:
1、由已有的操作数建立新的操作数;
2、新操作数和已有的操作数类型不一样
1)PTR运算符
格式: 类型 PTR 表达式
例:INC WORD PTR [BX]
wx dw 1234h
mov al, byte ptr wx
mov ah, byte ptr wx+1
2)THIS操作符
格式: THIS 类型(或属性)
例:FIRST EQU THIS BYTE
SECOND DW 100 DUP (?) ;4.4汇编语言程序设计 ;;框架一:
DATA SEGMENT ;定义数据段
VAL1 DB 12H , 8EH ;定义变量
……
DATA ENDS ;数据段结束
CODE S
文档评论(0)