- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇编语言程序设计03简单的算术运算与数据传送.ppt
* * * ALIGN伪指令 ALIGN伪指令可以使指令或变量的位置按照字节、字、双字进行边界对齐 边界值可以是1、2或者是4 对齐可以提高CPU存取内存的效率 变量:填充数据 指令:填充NOP(空指令) 汇编语言程序设计 - 朱明 * ALIGN 边界值 bVal BYTE ? ALIGN 2 wVal WORD ? 增加了对齐伪指令前后wVal变量存储位置的变化 PTR操作符 使用PTR操作符对操作数进行尺寸上的重载 功能上相当于C语言中的强制类型转换 PTR操作符不改变操作数的原类型,仅重载新类型 汇编语言程序设计 - 朱明 * dVal DWORD mov ax, WORD PTR dVal mov eax, dVal AX=5678h AX = 1234h ? AX = 5678h ? EAX PTR操作符 使用PTR操作符对操作数进行尺寸上的重载 CPU并不在乎你定的数据类型,它只是按照程序定义的规则去访问内存 汇编语言程序设计 - 朱明 * dVal DWORD lVal WORD 1234h, 5678h mov ax, WORD PTR dVal+1 mov eax, DWORD PTR lVal AX=3456h EAX EAX = ? TYPE操作符 TYPE操作符返回按照字节为单位的元素的大小 BYTE(1)、WORD(2)…. 汇编语言程序设计 - 朱明 * TYPE reg/mem dVal DWORD lVal WORD 1234h, 5678h mov eax, TYPE dVal mov eax, TYPE lVal EAX EAX LENGTHOF和SIZEOF操作符 LENGTHOF操作符返回数组中的元素的个数 只能返回跨行数组第一行的元素的数目 SIZEOF操作符的返回值= LENGTHOF的返回值 * TYPE的返回值 汇编语言程序设计 - 朱明 * Array1 WORD 1234h, 5678h Array2 BYTE 20 DUP(?),0 mov eax, LENGTHOF Array1 EAX mov eax, LENGTHOF Array2 EAX LABEL伪指令 LABEL伪指令用于在指定位置插入一个不占用存储空间的、但具有属性特征的标号 相同的存储空间的不同的名字(标号) LABEL也可用于合并成大数 汇编语言程序设计 - 朱明 * wVal LABEL WORD dVal DWORD 78 56 34 12 0001h 0000h 0002h 0003h wVal dVal mov ax, wVal ax = 5678h mov ax, wVal+2 ax = 1234h 章节回顾 本章中以下内容是应当掌握 MASM汇编语言的操作数类型 数据传送指令MOV、MOVZX和MOVSX的用法 直接寻址的过程中的偏移量问题 XCHG、INC、DEC和NEG指令的用法 AC、PF、ZF、OF、SF和AC的影响因素和判定条件 OFFSET操作符、ALIGN伪指令、PTR操作符的作用 SIZE操作符和TYPE操作符、LENGTHOF操作符的作用和三者之间的关系 LABEL伪指令的作用 汇编语言程序设计 - 朱明 * 章节回顾 以下的问题我们应当轻松回答 r/m32、imm16分别表示什么? 用汇编语言实现类似下面的运算过程 AX = ( -wVal1 + BX ) – wval2 连续执行下面指令对于CF、SF、ZF和OF影响分别如何 mov ax, 7FF0h add al, 10h add ah, 1 add ax, 2 myBytes BYTE 10h, 20h, 30h, 40h 将其前两个字节送入DX寄存中,使其为2010h 将其内容全部传送至EAX寄存器中 汇编语言程序设计 - 朱明 * 思考问题 本章中的学习了一些指令 如果我们要用这些指令对一个数组进行求和的操作 假设在程序运行之前,数组的大小(5个元素)和元素大小都是已知的(DWORD) 要求你的程序仅使用今天以前讲过的指令完成 本道题目作为一个小作业,占总成绩的10% 如果是抄书的则不给本次作业的成绩 不可以使用间接寻址等更高级的寻址方式完成 下次课上课之前发送至zmingc
您可能关注的文档
最近下载
- Q_320581CTY025-2019氟铝酸钾企业标准.pdf
- 尾矿库安全技术规程(AQ2006-2005).pdf VIP
- 《混凝土结构加固设计规范》GB50367-2013.docx VIP
- 2023年住院医师规培(内科)考试历年常考点专家摘选附带答案.docx VIP
- 小米智能生态产品矩阵产业链风险与应对策略分析报告.docx
- 编制说明-《抽水蓄能电站建设工程质量验收评定标准》.docx VIP
- 2023年住院医师规培(放射肿瘤科)考试历年核心考点摘选附带答案.docx VIP
- 数据中心机房项目验收检查表——消防系统.pdf VIP
- 十四五中医妇科学胎动不安课件.pptx VIP
- 2020 年二级建造师《水利水电工程管理与实务》真题答案及解析.pdf VIP
文档评论(0)