补码的加减法运算_简述补码减法运算的规则

补码的加减法运算_简述补码减法运算的规则补码的加减法运算本文内容参考自王达老师的《深入理解计算机网络》一书<中国水利水电出版社>一、补码加法:1、补码的加法运算两个机器数相加的补码可以先通过分别对两个机器数求补码,然后再相加得到,在采用补码形式表示时,进行加法运算可以把符号位和数值位一起进行运算(若符号位有进位,导致了益出,则直接舍弃),结果为两数之和的补码形式。示例1:求两个十进制数的和35+18。首先,规…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

补码的加减法运算

本文内容参考自王达老师的《深入理解计算机网络》一书<中国水利水电出版社>

一、补码加法:

  • 1、补码的加法运算
    两个机器数相加的补码可以先通过分别对两个机器数求补码,然后再相加得到,在采用补码形式表示时,进行加法运算可以把符号位和数值位一起进行运算(若符号位有进位,导致了益出,则直接舍弃),结果为两数之和的补码形式。
    示例1:求两个十进制数的和 35+18。
    首先,规定字长是8位,也就是只能用8位二进制表示。
    35的原码:00100011。
    18的原码:00010010。
    因为35和18都是正数,所以补码和原码完全一致。
    35的补码:00100011。
    18的补码:00010010。
    因为补码是可以连同符号位一起运算,所以运算法则等同于无符号二进制运算:
     00100011---35二进制表示
     00010010---18二进制表示
     00110101-----转换成10进制是53。结果正确!
    

    示例2:求两个十进制数的和 35+(-18)。
    同示例1一样,只能用8位表示。
    35的原码:00100011。
    -18的原码:10010010。
    因为35是正数,补码与原码完全一致,但是-18是负数,补码需要转换。
    35的补码:00100011。
    -18的补码:由原码除符号位外取反,再在最低位+1,得到结果是11101110。这时都是补码,运算规则等同于无符号二进制加法。

       00100011
       11101110
      100010001---因为前面规定了字长是8位,这里出现了9位,
      所以最高位舍弃,舍弃后,结果为00010001转换成十进制是:17。结果正确!(超出字长部分直接舍弃)
    

二、补码减法:

  • 1、补码的减法运算
    减法实际上就是加一个负数。运算法则和加法实际上是一致的!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194116.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VB里的 dim是什么意思?[通俗易懂]

    VB里的 dim是什么意思?[通俗易懂]Dim为Dimension的缩写,后面加上所需变量的名字As为变量指定类型程序运行时,Dim语句就根据变量类型为变量分配内存空间

    2022年8月5日
    4
  • matlab保存图片清晰度_图片分辨率300dpi怎么设置

    matlab保存图片清晰度_图片分辨率300dpi怎么设置用print函数:如:t=1:100plot(t,sin(t));print(gcf,’-dpng’,’sin.png’);用saveas()如:t=1:100;plot(t,sin(t));saveas(gcf,’my_picture.bmp’,’bmp’);print(‘-depsc’,’-tiff’,’-r300′,’picture1.eps’)%满足dpi的要求savesthecurr…

    2022年9月13日
    2
  • mysql的UUID获取上一篇下一篇(上一条 下一条)应用实例[通俗易懂]

    mysql的UUID获取上一篇下一篇(上一条 下一条)应用实例[通俗易懂]先讲原理:有上一篇下一篇(上一条下一条),肯定是在:搜索条件下,排序规则固定的场景下,得到的一个查询集合(列表)中的一个效果。1.我们在这两个条件(搜索条件where排序规则order),给查询结果集给利用rownum(一个顺序自增的标号)2.查询出目标uuid的rownum值x.3.查询上一条和下一条:rownum=x-1的uuid得到上一条rownum=x+1的uuid得到下一条实际应用:一个固定的检索条件固定排序的查询:SELECT bn.*FROM b

    2022年8月9日
    5
  • 大数据——Flume+Kafka+Flume整合模式

    大数据——Flume+Kafka+Flume整合模式创建kafka主题#启动kafka服务kafka-server-start.sh/opt/software/kafka280cala212/conf/kraft/server.properites#创建主题#topic主题名test01#partitions分区数1#replication-factor备份数量1kafka-topics.sh–create–topictest01–partitions1–replication-factor1…

    2022年6月23日
    42
  • 可以连接服务器无法发送邮件 诛仙,诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现…[通俗易懂]

    可以连接服务器无法发送邮件 诛仙,诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现…[通俗易懂]诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现2016-05-08·Mr.Xia4580次浏览连接Gdeliveryd服务器,可以通过Socket建立邮件信息,向角色发送带有物品装备的邮件,Socket是一个和语言无关的协议,大多数语言比如C/C++/PHP/VB等都支持Socket,这里使用Java实现,适用于诛仙2和诛仙3诛仙给角色发送物品装备邮件的代码,通过Socket连接…

    2022年7月19日
    17
  • C# FileStream简单介绍和使用

    C# FileStream简单介绍和使用本章讲述:FileStream类的基本功能,以及简单示例;1、引用命名空间:usingSystem.IO;2、注意:使用IO操作文件时,要注意流关闭和释放问题!强力推荐:将创建文件流对象的过程写在using当中,会自动帮助我们释放资源;使用try{}catch(Exceptionex){}进行一次捕获;3、FileStream操作字节,可以操作任何类型…

    2022年7月21日
    10

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号