您当前的位置: 首页 > 

跋扈洋

暂无认证

  • 3浏览

    0关注

    221博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

汇编语言---计算表达式的值

跋扈洋 发布时间:2020-12-25 16:53:07 ,浏览量:3

汇编语言---计算表达式的值
  • 配置环境
  • 实现的功能
  • 编辑程序
  • 运行程序
  • 后续

配置环境
  1. 首先双击下载程序进行下载。(没有安装程序的,可以下载我为大家准备的安装文件。) 不会安装的可以看一下文件

  2. 将debug.exe放入C盘(没有debug的自行下载)

  3. 打开DOXBos 在这里插入图片描述

  4. 将masm文件放入D盘(没有masm的自行下载)

  5. 更改masm文件为123(任意),在文件夹中创建文件123.asm。

  6. 在DOXBos程序中 输入mount C D:\123

  7. 输入C:

  8. 打开123.asm编写程序

实现的功能

编写程序,计算表达式(2*X+Y-65)/Z的值。要求相除之后的商和余数分别存放在A,B单元中(设X,Y,Z和A,B都是16位有符号数,不考虑溢出)

编辑程序
DATA	SEGMENT
X	DW	18
Y	DW	260
Z	DW	5
A	DW	?
B	DW	?
DATA	ENDS
CODE	SEGMENT
	ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
	  MOV DX,AX
	  MOV X,AX	;
	  MOV BX,2
	  IMUL BX	;隐含的被乘数
	  ADD AX,Y
	  ADC DX,0
	  SUB AX,65
	  SBB DX,0
	  IDIV Z
	  MOV A,AX
	  MOV B,DX
	  MOV AH,4CH
	  INT 21H
CODE	ENDS
		END	START
	                    

运行程序
  1. masm 123.asm 在这里插入图片描述如果出现错误根据提示进行更改

  2. link.123

  3. 运行123.exe

  4. 运行成功

  5. 反汇编(为了输入方便,将123.exe改为1.exe,这点大家不用更改,维持你文件名即可)

debug 1.exe

然后用U命令

-u

得到反汇编结果

  1. 运行结果,查看寄存器(T命令或者G命令) 如果用T命令一步一步执行 可以输入
debug 1.exe
-r
-t
...
(直到得出结果)

如果用G命令全部运行

debug 1.exe
-u
-G 076A:0018  ;(这里是你想要运行到的程序地址)
程序将会运行到这里
后续

如果想了解更多物联网、智能家居项目知识,可以关注我的项目实战专栏。 欢迎关注公众号。 在这里插入图片描述

编写不易,感谢支持。

关注
打赏
1663745539
查看更多评论
立即登录/注册

微信扫码登录

0.0366s