汇编语言---计算有符号数算式的值

  • 配置环境
  • 要求
  • 编辑程序
  • 运行程序
  • 后续

配置环境

  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编写程序

  9. 第6、7步可以省略,省略办法见这篇文章,设置之后就不必每次都输入

要求

计算【Z-(X*Y+60)】/4的值,将商送入V单元,余数送入W单元。设X,Y,Z均为16位有符号数据,具体数据由用户自己定义。

编辑程序

DATA SEGMENT
X DW 2
Y DW -10
Z DW 300
V DW ?
W DW ?
DATA ENDS
CODE SEGMENTASSUME CS:CODE,DS:DATA
START:MOV AX,DATAMOV DS,AXMOV AX,XMOV BX,YIMUL BXMOV CX,60MOV BX,0ADD AX,CXADC DX,BXMOV CX,ZMOV BX,0SUB CX,AXSBB BX,DXXCHG CX,AXXCHG BX,DXMOV BX,4IDIV BXMOV V,AXMOV W,DXMOV AH,4CHINT 21H
CODE ENDSEND 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
-G 076A:0018  ;(这里是你想要运行到的程序地址)

后续

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

编写不易,感谢支持。

汇编语言---计算有符号数算式的值相关推荐

  1. C++嵌入汇编语言计算有符号数组的平均值

    关于嵌入汇编: 嵌入汇编是指在C和C++的源程序中插入汇编语言指令,也称内嵌汇编.内联汇编或行内汇编.VisualC++中使用"__asm"关键字指示嵌入汇编,不需要独立的汇编系统 ...

  2. 计算机计有符号数计算,有符号数处理

    在计算机内,定点数分为有符号数(signed)和无符号数(unsigned).其中,有符号数的表示方法有三种:原码.反码和补码.反码表示法规定:正数的反码与其原码相同:负数的反码是对其原码逐位取反,但 ...

  3. 二进制补码计算——有符号数的乘法

    位数问题 a_width位的a,乘以B_width位的b,结果的位数是A_width + B_width. 定点小数问题 小数位数等于a的小数位数,加上b的小数位数之和. 补码相乘问题 补码 * 补码 ...

  4. 为什么8位有符号数的取值范围是-128~+127

    首先我们知道,计算机以补码的形式存储的,正数的补码是原码不变,负数的补码是原码的取反加1. 我们先来看+127,原码0111 1111对吧,若+128是多少呢,0111 1111 + 1 = 1000 ...

  5. c语言中的无符号字节,C语言之有符号数和无符号数

    我们知道,在C语言中存在无符号数和有符号数(一些高级语言如Java里面是没有无符号数的),但是对于计算机而言,其本身并不区别有符号数和无符号数,因为在计算机里面都是0或者1,但是在我们的实际使用中有时 ...

  6. 32 位的有符号整数的取值范围以及数值溢出

    short.int.long 是C语言中常用的三种整数类型,分别称为短整型.整型.长整型.在现代操作系统中,short.int.long 的长度分别是 2.4.4 或者 8,它们只能存储有限的数值,当 ...

  7. 汇编语言-010(循环移位ROL,ROR 、进位循环进位RCL,RCR 、有符号数溢出 、双精度移位SHLD,SHRD、SHL和ADD计算 、位运算应用)

    1 :循环移位ROL,ROR,带进位循环进位RCL,RCR .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD ...

  8. verilog有符号数和无符号数的计算

    有符号和无符号数 在电路设计中肯定会使用到有符号数无符号数的运算,今天简单说说具体怎么使用有符号数无符号数进行运算,这里以减法为例. 我们知道计算机运算都是以二进制的形式进行的,不过遇到负数,通常用二 ...

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

    汇编语言---计算表达式的值 配置环境 实现的功能 编辑程序 运行程序 后续 配置环境 首先双击下载程序进行下载.(没有安装程序的,可以下载我为大家准备的安装文件.) 不会安装的可以看一下文件 将de ...

最新文章

  1. Android开发学习笔记(二)——编译和运行原理(1)
  2. Linux的账号口令机制及其爆破
  3. P2152 [SDOI2009]SuperGCD
  4. 360浏览器怎么保存网页账号密码
  5. Java 将Word转为PDF、PNG、SVG、RTF、XPS、TXT、XML
  6. leetcode 只出现一次的数字
  7. mysql 判断 字母大写_MySQL中查询时对字母大小写的区分
  8. 在Altium Designer中利用阵列粘贴功能快速绘制元器件封装
  9. 精诚合作 共创未来——阿里云数据智能合作策略介绍
  10. STM32命名规则 STM32选型手册
  11. STM32官方固件库(标准固件库)下载及介绍
  12. oracle中的Start With关键字
  13. 怎么实现微信多公众号管理?
  14. Excel中快速填充产生连续的数字编号
  15. 第四章 线程切换与调度——操作系统的发动机
  16. Java简易实现凯撒密码——英文句子加密
  17. uniapp 开发视频解析app
  18. Python字体成灰色有波浪号
  19. 解决问题(九)——jsf+facelet(一)下马威
  20. 站在营销看工作,偶发几点小心得

热门文章

  1. Web前端基础---CSS样式--盒子模型--浮动与定位
  2. vue-router传参的坑(query和params)
  3. 为什么有的电路中要有两单片机
  4. LightOJ 1074 Extended Traffic(spfa+dfs标记负环上的点)
  5. 第二章 函数式数据结构
  6. javaWeb项目带红色感叹号问题原因
  7. ubuntu 下LAMP服务器环境搭建
  8. 如何判断一棵二叉树是完全二叉树(1)
  9. Rational Rose及RequisitePro安装注意事项
  10. MySql 你知道事务隔离是怎么回事吗?