第一范文网 - 专业文章范例文档资料分享平台

汇编语言学习笔记

来源:用户分享 时间:2025/5/17 5:53:56 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

第六章 包含多个段的程序

在代码段中使用数据

end除了通知编译器程序结束外,还可以通知编译器程序的入口在什么地方

start: 程序的第一条指令 … end start

在代码段中使用栈

在描述dw的作用时,可以说用它定义数据,也可以说用它开辟内存空间

dw:define word

格式:[变量名] dw 数据1,数据2,… 功能:定义的是字型数据

说明:变量名可有可无,表明所定义的第一个字节的偏移地址 举例:data_word dw 100,100h

db:define byte

格式:[变量名] db 数据1,数据2,… 功能:定义的是字节型数据 举例:data_byte db 10,10h

将数据、代码、栈放入不同的段中

在代码段中使用数据和栈,存在的问题: 程序显得混乱

如果数据、栈和代码需要的空间超过64KB,就不能放在一个段中。 解决:定义多个段,将数据、栈和代码放到不同的段中。

定义多个段的方法:和定义代码段的方法一样 对段内数据的引用

段名相当于一个标号,代表了段地址。 偏移地址看数据在段中的具体位置 代码段、数据段、栈段是人为的安排。

第七章 更灵活的定位内存地址的方法

AND :逻辑与指令

格式:AND 目的操作数,源操作数

功能:按位进行与运算,结果放到目的操作数 例如:mov al,01100011b and al, 00111011b 执行后 al=00100011b

OR :逻辑或运算

格式:OR 目的操作数,源操作数

功能:按位进行或运算,结果放到目的操作数 例如:mov al,01100011b or al,00111011b 执行后 al=01111011b

NOT:逻辑非 格式:not 操作数 功能:按位进行非运算 例如:mov al,01100011b not al

执行后, al=10011100b

XOR:逻辑异或(相同为0,不同为1) 格式:xor 目的操作数,源操作数 功能:按位进行异或运算 例如:mov al,01100011b xor al,00111011b 执行后, al=01011000b

大小写转换问题

一个字母不管它原来是大写字母还是小写字母,将它二进制形式(ASCII码)的第五位置为0,它就必将变为大写字母;将它的第五位置为1,它就必将变为小写字母.

搜索更多关于: 汇编语言学习笔记 的文档
汇编语言学习笔记.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c9a0ni9v2s34n25r6n285_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top