教你写一个含信息的汇编程序
Posted HACK--荒原狼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了教你写一个含信息的汇编程序相关的知识,希望对你有一定的参考价值。
dosbox官网: https://www.dosbox.com/
https://download.csdn.net/download/fouken_ma/7682497 其他工具下载地址
打开dosbox后我们来转到含有debug等等文件的文件夹
我是在/opt/bugs/debug下存放这些文件的
我们输入:mount c /opt/bugs/debug
然后输入:c:
按回车后就会进入文件了,可以直接调用工具
首先我们来介绍我们要用的程序。
masm(编译)link(链接库 生成exe)debug(调试,调查内存单元。)
首先我们讲一下debug用法
dosbox(32位的可以忽略下载这个软件)。
我们主要用到d t 来执行我们的debug用来调试每一条我们写进去的汇编语言。
d 显示内存单元
t 执行汇编指令
接下来我们详细的讲讲汇编代码这一点。
debug里面显示,一内存单元可以储存16个字节的数据,所以,我们要填写的数据如果超过了16个字节,他填到下一行。
代码如下:
- assume cs:code #指定一个寄存器这里我们选择cs
- code segment #开始编写
- db ‘test message....‘
- code ends(ends和end的用途不同在,end是指明汇编程序的结束,而ends是这个段的结束标志。)
- end
编写完后我们重命名为 xxx.asm #注:asm是汇编程序编写完的源代码,我们需要经过编译,链接才能生成可执行文件
我们使用masm来进行编译
我们在命令行输入masm test.asm
然后一直回车就行。目前我们不需要用到其他的选项
然后我们得到一个名为test.ojb的文件
然后我们用link生成exe
link test.ojb
也是一路回车就行了
生成后我们使用
debug开始调试
debug test.exe
我们输入"r" #其实t也对
然后输入 ”d"
我们可以看到,我们的信息显示在屏幕上
以上是关于教你写一个含信息的汇编程序的主要内容,如果未能解决你的问题,请参考以下文章