关于汇编中的NEG指令正解!(补码,反码,原码)现实意义

原创 2017年02月04日 10:50:12

预计阅读时间:30秒。

本文核心:NEG命令就是取反+1 ,另一种方法,用0减去这个数的二进制。

在学习汇编指令的过程中,碰到好多的问题,例如刚刚碰到一道小小的问题(入门级)

知识点:

  1. 在汇编语言中,正数的补码=他本身,正数的反码=他本身,负数的补码=取反后+1,负数的反码=按位取反(0 变 1)。
  2. 在汇编语言中,NEG命令代表取补运算,只有一个操作数,可以理解为,对操作数去补并把结果放在操作数中。

疑    点: 书本上明明写着正数的补码=他本身,可为什么执行以下命令后结果为 F0 呢 

        例:

MOV DH,10  //把10放到DX的高八位
NEG DH     //对DH进行取补运算把结果放进DH中
结果为:DH = F0


如果按书上的方法来算的话,最后结果应该依然是10H,因为10H是一个正数。


总结:在16位汇编语言中,NEG命令无论你是否为正负数,都会按照取反+1或用0减去这个数的二进制的办法去计算

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013542549/article/details/54861355

UML参考手册 第二部分 基 本 概 念 第5章 用 例 视 图

UML参考手册  第二部分 基 本 概 念  第5章 用 例 视 图 5.1 概述  当用例视图在外部用户前出现时,它捕获到系统、子系统或类的行为。它将系统功能划分成对参与者(即系统的理想用户)有用的...
  • CandyCat
  • CandyCat
  • 2001-05-26 22:59:00
  • 1240

neg指令

neg指令详细解释 规则: 1. neg reg (对寄存器操作) 2. neg mem(对内存操作) 作用:将目的操作数的所以数据位取反加1 影响的标志:进位标志(CF),零标志(ZF),...
  • cos_sin_tan
  • cos_sin_tan
  • 2011-09-15 19:16:17
  • 3045

研究16位汇编NEG求补指令

转自:http://bbs.pediy.com/showthread.php?t=81209  【文章标题】: 研究16位汇编NEG求补指令  【文章作者】:  hzmslx 我是个菜鸟··...
  • cos_sin_tan
  • cos_sin_tan
  • 2011-09-15 19:14:52
  • 1290

neg+sbb指令

neg指令:intel指令手册是这样说明的 IF DEST = 0 THEN CF ELSE CF 就是说,当操作数为0时,cf标志为0,否则cf被置1.(...
  • tianxiajianling
  • tianxiajianling
  • 2013-11-04 10:37:34
  • 3189

带借位减法指令SBB,求补指令NEG

SBB reg,imm/reg/mem ;reg←reg-imm/reg/mem­­-CF      SBB mem,imm/reg ;mem←mem-imm/reg-CF NEG reg/mem ;...
  • li_hai
  • li_hai
  • 2007-07-12 05:45:00
  • 2093

汇编地址表的使用

题目使用地址表实现如下功能:根据输入的数字1-7,分别显示相应的英文星期名,如果输入其他字符,则重新输入。assume cs:code,ds:data data segment a dw l1,l2,...
  • Mikeoperfect
  • Mikeoperfect
  • 2017-04-29 11:48:57
  • 956

汇编中一些标志位的含义

来自:http://www.xuebuyuan.com/1602601.html 汇编语言标志位 含义 NV UP EI NG NZ AC PE CY 股沟了一下,终于...
  • caoyuanll
  • caoyuanll
  • 2016-01-23 21:21:25
  • 4729

详解汇编中的原码,补码,反码

 网上看的这篇文章,自认为讲的很好,对这三者之间概念模糊的可以看看.^_^也是对刺猬的 似曾相识——记录NASM中的非、与、或 的一篇补充.原文地址:http://blog.csdn.net/cxyo...
  • lingang_
  • lingang_
  • 2008-04-08 20:21:00
  • 2130

标志寄存器及其标志位

标志寄存器: CPU内部的寄存器,(对于不同的处理机,个数和结构都可能不同)具有三种作用: 用来存储相关指令的某些执行结果; 用来为CPU执行相关指令提供行为依据; 用来控制CPU的相关工作方式。...
  • gc348342215
  • gc348342215
  • 2017-04-18 10:06:37
  • 989

8086 标志寄存器

标志寄存器(FLAG): 前面呢,已经介绍了  8086  CPU  14 个寄存器中的 13 个了,下面我们将介绍最后一个寄存器也就是  FLAG  寄存器, FLAG  寄存器之所以放...
  • qq_35212671
  • qq_35212671
  • 2016-10-10 22:24:04
  • 2715
收藏助手
不良信息举报
您举报文章:关于汇编中的NEG指令正解!(补码,反码,原码)现实意义
举报原因:
原因补充:

(最多只允许输入30个字)