记录nasm使用基础流程

步骤一:编写代码

编写asm文件,上课示例代码如下:

start:
	mov	ax,0xb800
	mov	es,ax

	mov	byte [es:0x10],'P'
	mov	byte [es:0x11],0x0c

	mov	byte [es:0x12],'C'
	mov	byte [es:0x13],0x0c

x:	jmp	x

我的文件命名如图:

步骤二:编译

打开命令行,进入到nasm文件夹下:

执行命令:nasm test.asm。此种方式test.asm需在当前目录下。若命令行显示存在nasm但无法执行的错误,且提示可以使用.\nasm代替,那么执行命令改为:.\nasm test.asm

若代码没有错误,则不会报错,且文件夹下多了机器码文件,如图:

步骤三:winhex写入

  1. 解压老师给的winhex压缩包,找到winhex.exe文件,打开。

  2. 菜单栏处点击help下的register,会自动跳出注册码,直接点击ok完成即可。

  3. 菜单栏处点击options选项下的第一行general。将前三行文件地址改成自己想放的,以我为例,见图:完成后点击左下角的ok完成操作。

  4. 将刚刚生成的的直接拖入winhex,再将老师给的解压文件中的uboot2.img拖入winhex。

  5. ctrl+A全选,ctrl+C复制。

    点击E,会有蓝色光标闪烁,ctrl+B写入,会显示写入偏移量为0的地方,那这就对了。写入后,另存为uboot2.img至安装的路径下,img文件夹自己建。

步骤四:修改bochs配置文件

  1. 老师给的压缩文件下有,用记事本打开,俺下图修改三处路径,修改为你的安装路径。

  2. 将修改好的配置文件复制到步骤三中的最后一个图片的文件夹下。

  3. 在安装目录下找到:

  4. 此为调试程序,双击打开。

  5. 在跳出的框中点击load加载刚才复制进去的配置文件:

然后点击右半部分的start

在新跳出的框中选中点击ok。

  1. 在console控制台中输入:b 0x7c00(打断点),再输入c(表示执行到断点处),运行后见图:

display窗口有了变化,再在console控制台中分批输入几次n,效果见图:

display窗口中P字母已经变为红色,即步骤一中写的改变P字母颜色的代码已执行完毕。

posted @ 2020-11-06 11:18  Anzer  阅读(699)  评论(0编辑  收藏  举报