- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
程序设计基础几个概念汇编语言汇编语言源程序汇编汇编程序18086汇编语言的语句汇编语言由指令性语句和指令性语句组成一、指令性语句格式 [标号:]操作码[操作数1,][操作数2];[注释]二、指示性语句格式 [标识符(名字)]指示符(伪指令)表达式三、有关属性 存储器操作数的属性有三种:段值、段内偏移量和类型。28086汇编中的伪指令一、符号定义语句1、等值语句 格式:符号名EQU表达式 例: ⑴PORT EQU1234 ⑵BUFF EQUPORT+58 ⑶MEM EQUDS:[BP+20H] ⑷COUNTEQUCX ⑸ABC EQUAAA2、等号语句 格式: NUM=34 …… NUM=34+1二、变量定义语句 格式:符号名DB/DW/DD表达式1、定义一组数据 例1:BUFFDW1234H,0ABCDH,8EH DW–79DH,7B6AH2、定义一串字符 例2:STRDB‘Welcome!’3、定义保留存储单元 例3:SUMDW?, ?4、复制操作 复制操作符DUP(Duplication)可预置重复的数值 例4:ALL_ZERODB0,0,0,0,0 用复制操作可改为: ALL_ZERODB5DUP(0)5、将已定义的地址存入内存单元 例5:LITDDCYC… CYC:MOVAX,BX三、段定义语句1、段定义语句格式:段名SEGMENT[定位类型][组合类型][‘类别’] ……段名ENDS只需要掌握段名SEGMENT ……段名ENDS2、段假设语句 ASSUME段寄存器名:段名[,…]3、?ORG伪指令、地址计数器$ ORG伪指令格式:ORG表达式4、END表示源代码结束格式为:END常数或表达式.四、过程定义语句 过程名PROCNEAR/FAR …… RET 过程名ENDP38086汇编中的运算符一、常用运算符1、算术运算符+(加)、-(减)、*(乘)、/(除)、MOD(求余)。2、逻辑运算符AND、OR、XOR、NOT3、关系运算符 EQ(相等)、NE(不等、)LT(小于)、GT(大于)、 LE(小于等于)、GE(大于等于)。关系成立,全1 关系不成立,全0 例:MOVDL,10HLT16 例:ANDAX,555GT222二、常用的操作符4、分析操作符1)SEG操作符 例:MOVAX,SEGBUFF2)OFFSET操作符 例:MOVBX,OFFSETBUFF3)TYPE操作符对于变量有3种:1字节型;2字型;4双字型;对于标号有2种:-1NEAR(段内),-2FAR(段间)。 例:BUFFDB20H MOVBX,TYPEBUFF?MOVBX,014)LENGTH操作符5)SIZE操作符 SIZE=TYPE×LENGTH 例:BUFFDB10DIP(?) MOVCX,LENGTHBUF?MOVCX,10 MOVCX,SIZEBUF?MOVCX,205、综合运算符(合成操作符)功能: 1、由已有的操作数建立新的操作数; 2、新操作数和已有的操作
文档评论(0)