彻底搞明白“取反加1”到底是个什么鬼?

您所在的位置:网站首页 负一加一为什么等于01 彻底搞明白“取反加1”到底是个什么鬼?

彻底搞明白“取反加1”到底是个什么鬼?

2024-07-11 16:47:30| 来源: 网络整理| 查看: 265

写作时间:2020-08-15 在这里插入图片描述

目录:

1.问题: 2.将二进制表达的负数换成十进制怎么弄? 3.总结一下

正文:

1.问题:

比如说。要表达0~255的十进制数,在FPGA使用一个8bit[7:0]的二进制就可以。 但是,我们要表达-255~255的十进制数,在FPGA中怎么表达,我们需要使用一个9bit[8:0]的数。最高位[8]是标志位。

2.将二进制表达的负数换成十进制怎么弄?

取反加一 比如: '1 0101 0101’这是9bit的二进制。 最高位1表示是负数。 其他8bit取反为“1010 1010” 再加一为“1010 10 11” bin2dec(“1010 10 11”)=171 那么这个数就是:-171

每个过程与10进制对应起来: 如果我们直接把‘’1 0101 0101’转为十进制是多少呢? bin2dec(“1 0101 0101”)=341 最高位的1是符号位,十进制为2^8=256 1)去掉最高位,二进制位‘’0101010’ 十进制就是341-256=85 2)取反,‘’0101 0101’取反,二进制取反为“10101010”。 ‘’0101010’取反,怎么取反呢,怎么方便算呢? 使用“11111111”-“0101010”,即就是“10101010”。技巧:减法可以使得1变0,0变1。 十进制就是255-85=170 3)再加一,“10101010”再加一就是“10101011” 170+1=171 那么这个数就是-171

3.总结一下: 取反加1,以9bit为例,如果最高位是1,表示负数。 那么“二进制取反加1”对应“十进制操作”如下: a表示bin2dec(“某一个二进制01序列”),a为十进制。 b表示,我要求的那个十进制负数 b=-(255-(a-256)+1)=a-512;

if a255负数 b=a-512 end

也就是0表示正数0,255表示正数255, 256表示负数-256,257表示-255,511表示-1。 这个9bit 带符号位可以表示-256~255

a=1:511; b=zeros(1,length(a)); for ii=1:length(a) if a(ii)255负数 b(ii)=a(ii)-512; end end

上面代码可完全说明。

THE END~

【MATLAB-app】系列教程00_csdn上第一套关于matlab appdesigner系列“视频课”~~



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭