四章 汇编语言程序设计

四章 汇编语言程序设计

ID:19647796

大小:52.00 KB

页数:10页

时间:2018-10-04

四章 汇编语言程序设计_第1页
四章 汇编语言程序设计_第2页
四章 汇编语言程序设计_第3页
四章 汇编语言程序设计_第4页
四章 汇编语言程序设计_第5页
资源描述:

《四章 汇编语言程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第四章汇编语言程序设计第一节汇编语言的语句一、语句的种类源程序是分段的,若干段构成,如Name1segment语句Name1endsName2segment语句Name2ends.语句分指令语句和指示性语句,指令语句要翻译成机器语言后执行操作,指示性语句不翻译,引导做一些操作。格式如下:指令语句标号:助记符操作数1,操作数2;注释指示性语句名字命令参数1,参数2,…,参数n;注释二、语句的格式名字项操作项操作数项注释项1、名字项可以用字母、数字、一些特殊字符构成,长度不超过31个字符,不能以数字开头,不能是字符串

2、、操作数、$(1)标号指令存放的单元地址,经常出现在转移和调用情况下(2)变量操作数存放的单元地址2、操作项指令的助记符3、操作数项给出地址或参数,可有多个,用“,”隔开(1)常数(A)数字常数如BQDH(B)字符串常数如‘A’(C)符号常数如movcx,count(要定义)(2)表达式由常数、寄存器、标号变量和运算符、操作符构成,用于运算地址或数据(A)算术运算符+-*/mod例:Arraydw1,2,3,4,5Wendadw?.Movcx,(Wenda-Array)/2(B)逻辑运算符andorxornot如

3、outportvaland0feh,al(C)关系运算符eqneltgtlege结果为真(全1)或假(全0),如:Movbx,((portvallt5)and20)or((portvalge5)and30)(D)分析操作符lType变量或标号DBDWDDDQDTlLENGTH变量如:Feelsdw100dup(0)Movcx,lengthfeelslSize变量为type与length乘积如上面改为:Movcx,sizefeelslOffset变量如:movbx,offsetopr(等同于leabx,opr,送有

4、效地址)lSeg变量如:movbx,segopr(送段地址)(D)合成操作符lPtrTypeptr表达式,类型可以是byte、word、dword、near、far如:movwordptr[bx],5l段操作符段超越(movbx,es:[2000h])lShort-128~127lThis属性如:Wbuffer1equthisword4、注释项第二节指令语句一、用标号作为转移地址在转移处设置标号,或用equ定义(milesequthisfar)二、段名为段地址如段的赋值三、变量名为储存单元中的直接地址Addal,

5、byte1四、符号名为立即数Movdl,array五、几种寻址方式的操作数1、相对寻址的偏移量可用变量名或符号名Movblength[si],02、方括号及bx、bp、si、diMovax,[bx]六、存储器的操作数类型Moval,[bx]Inc[bx]Incbyteptr[bx]Mov[si],5Movwordptr[si],5七、段超越前缀隐含的:bp为ss,其余为dsMovax,ss:[bx](段超越)第三节指示性语句一、符号定义语句1、equ等值语句名字equ表达式、常数、符号如:alphaequ7bea

6、tequalpha-2emp=7(可以重复赋值,而equ仅一次)二、数据定义语句1、名字助记符操作数如:Data1db10,4,10hData2db‘a’Data3db24,?,54,?2、重复操作符dup常数或表达式dup(操作数)如:Data1db2dup(1,2,?)Data2db2dup(1,2,2dup(1,3),3)三、段定义语句DatasegmentOrg100hXdb?DataendsCodesegmentAssume(段的定义)cs:code,ds:dataStart:movax,datamov

7、dS,ax(段的赋值,CS段自动赋值)…CodeendsEndstartl关于$(当前地址计数器值)Arraydw1,2,$+4四、过程定义语句过程名procnear或far….RET过程名endp五、开始和结束语句1、name名字2、title名字(前6个字符可以打印)3、endstart第四节汇编语言上机过程一、要有edit.exe,masm.exe,link.exe,debug.com文件,放在一个文件夹中,注意路径二、过程进入dos环境(“开始”-“运行”-键入“cmd”)后,用”cd..”,”cd”等命

8、令进入相应路径后:1、编辑(editXXX.asm)完成后存盘(F3+E);xxx.asm2、汇编(masmxxx.asm,红色可以省略)若有错误再进行第一步;最终产生xxx.obj3、连接(linkxxx.obj,红色可以省略);最终产生xxx.exe4、执行(xxx.exe);5、查看(debugxxx.exe);lU命令(反汇编,找断点,即返回到DOS指令处mova

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。