前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >汇编笔记

汇编笔记

作者头像
yifei_
发布2022-11-14 14:07:56
4020
发布2022-11-14 14:07:56
举报
文章被收录于专栏:yifei的专栏

汇编

win10下环境配置

https://blog.csdn.net/yuzuruhanyu/article/details/80287419 https://www.cnblogs.com/zyever/p/7919007.html 王爽汇编课后答案

dosbox快捷键

  • alt+enter 全屏
  • ctrl+F10 显示/隐藏鼠标
  • ctrl+F11 减速
  • ctrl+F12 加速
  • ctrl+F9 强制退出

DOSBox基本指令

代码语言:javascript
复制
在DOSBox中输入debug,然后:
R 查看和修改CPU寄存器的内容
	r
	r ax
	AX 0000
	:****
D 查看内存
	d 1000:0
	d 短地址:起始偏移地址 结尾偏移地址
E 改写内存中的内容
	e 1000:0 ** ** ** **   //从1000:0处开始写入内存
	d 1000:10
	e 1000:10 <回车>       //从1000:10处开始逐个改写内存
	6D.** 72.** 33.**
	d 1000:10
	e 1000:0 'a' 'b' 'c' 3 4 5 "aaa" "bbb"   //可以写入字符 数字 字符串
U 将机器指令翻译为汇编指令
	u 1000:0

A 以汇编格式在内存中写入一条机器指令
	a 1000:0
	1000:0000 mov ax,1
	...
	...
	1000:000f<回车>
T 执行一条机器指令
	t                      //执行cs:ip指向的指令
P 将循环执行完/执行到 int 21h 处
G 0016   执行到0016处
-----------------------
rf 修改标志寄存器的值
Q 退出debug

编译连接运行

代码语言:javascript
复制
edit 编写程序
masm
	输入源程序路径
	直接回车,按照默认目标文件名
	直接回车,按照默认列表文件(源程序编译为目标文件的中间结果)
	直接回车,不生成交叉引用文件(中间结果)
link
	输入目标文件名
	输入可执行文件名/直接回车用默认名
	直接回车,不生成映像文件
	直接回车,忽略库文件名输入
	会出现警告:no stack segment 不用理会
1.exe 运行程序

快速编译和链接

代码语言:javascript
复制
masm 1.asm;  //注意加分号
link 1.obj;   //分号
1.exe      //运行程序
过程:编程>1.asm>编译>1.obj>链接>1.exe>加载>内存中的程序>运行

寄存器

代码语言:javascript
复制
地址寄存器
es 段地址
ds 存放要访问数据的段地址
ss 堆栈段,与sp配合使用
sp 堆栈偏移地址,与ss配合
cs:ip 指向要执行的指令地址
ds:si 源地址
es:di 目的地址
--------------------------
数据寄存器(都可分高低位)
ax 累加寄存器(ah,al)
bx 基址寄存器
cx 计数寄存器
dx 数据寄存器
--------------------------
标志寄存器
zf 零寄存器 zero flag
cf 无符号进位标志 carry flag
of 有符号溢出标志 overflow flag
pf 奇偶标志位 parity flag
sf 负号标志位 symbol flag
cld  df=0 正向复制
std  df=1 反向复制

数据定义

代码语言:javascript
复制
db 字节
dw 字
dd double字

常数/立即数

代码语言:javascript
复制
不能字母开头,需要加0。

数据复制

代码语言:javascript
复制
movsb 字节转移
movsw 字转移

王爽汇编第三版印刷错误

p144 0006H p256/257 两页印反 p266 访问8位端口? p267 左移后的数据

欢迎与我分享你的看法。 转载请注明出处:http://taowusheng.cn/

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • win10下环境配置
  • dosbox快捷键
  • DOSBox基本指令
  • 编译连接运行
  • 快速编译和链接
  • 寄存器
  • 数据定义
  • 常数/立即数
  • 数据复制
  • 王爽汇编第三版印刷错误
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档