精华内容
下载资源
问答
  • 二进制数如何表示正负
    千次阅读
    2013-10-04 18:53:22

    计算机中,用二进制(或者简写成十六进制)表示数,高位为0的数为正数,高位为1的数是负数。


    例如,int a = 0xf48904e,

    int b = 0xf48904e0,

    long c = 0Xf80000000L,

    long d = 0Xf800000000000000L.

    其中,a和c是正数,b和d是负数


    通过编写程序,很容易判断结果。如果是书面测试,应该注意数的位数。

    int型数据是32位,用十六进制表示应该有8个数字,不足8个数字,实际上是前面补充0,也就是a = 0x0f48904e;

    long型数据是64位,用十六进制表示有16个数字,不足16个数字,前面补0,也就是说c = 0X0000000f80000000L.


    更多相关内容
  • 二进制数表示方法

    千次阅读 2020-11-20 16:42:18
    定点和浮点数2.1 定点2.2 浮点数 1.原码、反码、补码 原码 机器最高为符号位,0正1负。 X=-0.1011,[X]原=11011 ,小数点默认在符号位之后,书写时将其省略。 补码 [X]补=[X]原(X>0) [X]补=[X]原除符号...

    1.原码、反码、补码

    原码

    机器数最高为符号位,0正1负。

    X=-0.1011,[X]=11011 ,小数点默认在符号位之后,书写时将其省略。

    补码

    [X]=[X](X>0)

    [X]=[X]除符号位取反加1(X<0)

    [+0]=[-0]=0.0000

    补码加法运算

    • 补码加补码还是补码
    • [X+Y]=[X]+[Y],减法可看作加相反数。
    • 符号位和数值位一样参与运算

    溢出处理:当结果超出范围时称为溢出。

    • 两正负号相同的数相加,结果符号不同,则溢出。
    • 任意符号数相加,符号位进位和数值最高位进位不相等,则溢出。
    • 若采用双符号数,00表示整数符号位,11是负数,01为上溢,10为下溢。

    多符号位的补码叫“变形补码”。

    一般运算用双符号位,存储保留一个fS1

    反码

    [X]=[X](X>0)

    [X]=[X]除符号位取反(X<0)

    移码

    [X]=-[X],即对[X]符号取反。

    在计算机中,移码(阶码)只执行加减法运算,且结果要修正,即[X]+[Y]+2n=[X+Y],也就是对符号位取反。

    0的移码唯一且为100…0。

    数据小于最小数(移码<=-2n)时称为机器零,置阶码(移码)为0000…0,不管尾数如何,都是浮点数下溢。

    2.定点数和浮点数

    2.1 定点数

    小数点固定在某位,包括小数(小数点在数值左符号右)和整数(小数点在数值右)。

    2.2 浮点数

    小数点位置可以浮动。

    N=M*RE

    N:浮点数,Mantissa:尾数,Exponent:阶码,Radix:阶的基数/底,常数,常为2、8、16。

    计算机中R都相同,不需在每个数据都表示,因此浮点数如下表示:

    MSEM
    尾数符号位,1位阶码,最高位符号位,n+1位m位

    M由MS和M组成一个定点小数。

    尾数规格化:R=2且尾数不为0,绝对值大于等于(0.5)10,即大于等于(0.1)2,即小数位最高位是1。对于不规格的数,左右移动尾数,同时修改阶码值,以保持值不变。

    尾数为0时,无论阶码如何,浮点数值为0,称为机器0。

    IEEE754标准,常用浮点数有以下两种格式:

    (1)单精度浮点数(32位)

    E:8 bit,M:24 bit(包括一位符号位)

    (2)双精度符号位(64位)

    E:11 bit,M:53 bit(包括一位符号位)

    多数通用机中浮点数尾数常用补码表示,阶码用补码或移码表示。[X]=-[X],即对[X]符号取

    IEEE754标准中,一个规格化的32位浮点数N的真值表示为N=(-1)s * (1.M) * 2E-127

    浮点数由于阶码的存在而扩大了数据的范围,32位单精度数范围:-2127~(1-2-23)*2127,精度是24位。

    展开全文
  • 在C语言中二进制怎么表示

    千次阅读 2021-05-18 09:08:30
    1.4个二进制位可表示多少种状态4个二进制位可表示16种种状态用一个值代表一个状态,那么4个二进制位可以代表 2^4=16 种状态,是排列组合的知识。0000,0001,0010,0011,0100,0101,0110,0111,1000,,1001,1010,1011,1100...

    1.4个二进制位可表示多少种状态

    4个二进制位可表示16种种状态

    用一个值代表一个状态,那么4个二进制位可以代表 2^4=16 种状态,是排列组合的知识。

    0000,0001,0010,0011,0100,0101,0110,0111,1000,,1001,1010,1011,1100,1101,1110,1111

    扩展资料

    优点

    数字装置简单可靠,所用元件少;

    只有两个数码0和1,因此它的每一位数都可用任何具有两个不同稳定状态的元件来表示;

    基本运算规则简单,运算操作方便。

    缺点

    用二进制表示一个数时,位数多。因此实际使用中多采用送入数字系统前用十进制,送入机器后再转换成二进制数,让数字系统进行运算,运算结束后再将二进制转换为十进制供人们阅读。

    二进制和十六进制的互相转换比较重要。不过这二者的转换却不用计算,每个C,C++程序员都能做到看见二进制数,直接就能转换为十六进制数,反之亦然。

    参考资料:搜狗百科-二进制位

    搜狗百科-二进制

    2.

    4就是0000 0100,-4就是 1000 0100 2进制数分为有符号数和无符号数,有符号数里面才有正负之分。

    其中第一位为符号位,1代表负数,0代表正数。 二进制是计算技术中广泛采用的一种数制。

    二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。

    二进制数(binaries)是逢2进位的进位制,0、1是基本算符;计算机运算基础采用二进制。电脑的基础是二进制。

    在早期设计的常用的进制主要是十进制(因为我们有十个手指,所以十进制是比较合理的选择,用手指可以表示十个数字,0的概念直到很久以后才出现,所以是1-10而不是0-9)。电子计算机出现以后,使用电子管来表示十种状态过于复杂,所以所有的电子计算机中只有两种基本的状态,开和关。

    也就是说,电子管的两种状态决定了以电子管为基础的电子计算机采用二进制来表示数字和数据。常用的进制还有8进制和16进制,在电脑科学中,经常会用到16进制,而十进制的使用非常少,这是因为16进制和二进制有天然的联系:4个二进制位可以表示从0到15的数字,这刚好是1个16进制位可以表示的数据,也就是说,将二进制转换成16进制只要每4位进行转换就可以了。

    3.4的二进制怎么算啊

    二进制四则运算和十进制四则运算原理相同,所不同的是十进制有十个数码,“满十进一”,二进制只有两个数码0和1,“满二进一”。

    二进制运算口诀则更为简单。1.加法二进制加法,在同一数位上只有四种情况:0+0=0,0+1=1,1+0=1,1+1=10。

    只要按从低位到高位依次运算,“满二进一”,就能很容易地完成加法运算。2.减法二进制减法也和十进制减法类似,先把数位对齐,同一数位不够减时,从高一位借位,“借一当二”。

    3.乘法二进制只有两个数码0和1,乘法口诀只有以下几条:0*0=0,0*1=0,1*0=0,1*1=1概括成口诀:零零得零,一零得零,一一得一。二进制乘法算式和十进制写法也一样。

    4.除法除法是乘法的逆运算,二进制除法和十进制除法也一样,而且更简单,每一位商数不是0,就是1。

    eed170361d2e5763

    转载请注明出处优创百科网 » 在C语言中二进制怎么表示

    展开全文
  • C语言正负整数的二进制表示及二进制输出格式C语言正负整数的二进制表示及二进制输出格式讲C 语言数据类型时,讲到整数是在计算机的存储单元中按整数的补码形式存放的,这是学生很难理解补码是什么。其实正整数的补码...

    C语言正负整数的二进制表示及二进制输出格式

    C语言正负整数的二进制表示及二进制输出格式

    讲C 语言数据类型时,讲到整数是在计算机的存储单元中按整数的补码形式存放的,这是学生很难理解补码是什么。

    其实正整数的补码是此数的二进制形式;

    而负整数的补码是按一下三个步骤求的:

    (1) 先将此数的绝对值写成二进制形式。

    (2) 然后对所有的各二进制位按位取反。(反码)

    (3) 再加 1,就得该负整数的补码。

    以下是显示整数二进制表示的C/C++程序:

    (1) C程序

    //程序设计:chuyi

    /*使用itoa来转成字符串 */

    /* itoa(数字,字符串指针,进制)*/

    #include

    #include

    int main()

    {

    //int a=7;

    int b=-7;

    char p[255];

    itoa(b,p,2);

    printf("%s\n", p);

    //itoa(b,p,2);

    //printf("%s\n", p);

    return 0;

    }

    (2) C++程序

    //程序设计:chuyi

    // 补码,负整数取绝对值后写成二进制形式,取反,加1,得对应的负数的补码。 #include

    char *__bit(int x,char *str,int len)

    {

    int i;

    for(i=len-1;i>=0;--i,x>>=1)

    str[i]='0'+(1&x);

    str[len]='\0';

    展开全文
  • 其中x为一任意int型正整数,左式表示取x的相反后的二进制形式,右式表示先将x的二进制按位取反后再加一得到的二进制形式。左右两个二进制相同"假设有一个 int 类型的,值为5,那么,我们知道它在计算机中表示为...
  • 文章目录科学计数法二进制推广计算机中的小数EXCESS表示系统特殊情况举例(float)普通情况最大正实普通情况最小负实数普通情况最小正实数特殊情况最大正实 科学计数法 科学计数法想必大家都很熟悉了,往往通过...
  • 3.5.1 定点和浮点数的概念在计算机中,数值型的数据有两种表示方法,一种叫做定点,另一种叫做浮点数。所谓定点,就是在计算机中所有的小数点位置固定不变。定点有两种:定点小数和定点整数。定点...
  • 十进制转二进制补码(正负都可) 指针初学 将一个十进制正(负)整数转换为对应的二进制补码(用指针完成 十进制转二进制:1.先判断该整数是正数还是负数 如果是正数则二进制补码首位为1 , 且对应的二进制补码就是原. 如果...
  • 计算机二进制的浮点表示

    千次阅读 2021-05-02 10:55:48
    计算机二进制的浮点表示法 0.1 * 3 != 0.3 组成: 符号位: 0表示正、1表示负; 指数位: 2的n次方,n+127(对于4字节浮点数,此处为127)再换算成二进制; 尾位: 直接用. 过程: 将整数部分换算成二进制; 小数部分...
  • 计算机/二进制 如何表示一个负数? 比如 1,可以使用 0001 表示。 使用最高次位为 1 表示,则 -1 使用 1001。缺点:相加不等与 0,比如 -1 + 1 等于 1010 = -2; 使用反码表示,-1 表示为 1110。缺点:存在 -0...
  • C++中数值类型的二进制表示

    千次阅读 2019-11-24 13:08:09
    整形变量的二进制表示 原码、反码、补码 取值范围 浮点型变量的二进制表示 符号位、指数部分、尾数部分 取值范围和精度 零、非规格化浮点数 INFINITY、NAN、IND C++中的数值类型 变量类型 占用字节 ...
  • 计算机中的二进制表示

    千次阅读 2020-12-13 22:55:14
    在计算机中数据运算的本质其实各种门...为了方便数据表示,计算机中定义多种数据类型,每种数据类型取值范围和占用的内存不同,我们可以根据他们占用的内存来计算出他们的取值范围。比如C语言中unsigned int类型(这里先
  • 随手笔记-二进制正负计算

    千次阅读 2019-10-07 16:48:01
     负数的二进制一般通过正数反推导出,即(正数二进制 -> 取反 -> 补码(加1)),举个例子:  99的二进制为:‭0110 0011‬  那么-99的二进制计算方法为  ‭0110 0011‬  1.取反: 1001 1100 即0...
  • 我们已经知道计算机中,所有数据最终都是使用二进制数表达。 1、java8种基本数据类型占用字节: 表示范围公式:(-2的n-1次方) 至 (2的n-1次方 - 1); 因为第一位用于当做符号位,第1个bit表示符号,0表示正数,1...
  • 任意输入一个十进制整数,包括正数负数,通过程序实现可以输出相应的二进制编码
  • 二进制中正负数表示和判断

    千次阅读 2017-03-07 22:32:50
    1代表负我知道,但是给你一个二进制比如101 那么转化成十进制应该是多少? 5? 但不是说首位为1应该是负的吗???  谁能给我讲讲这个首位什么时候作为符号,什么时候作为数字去计算?什么时候可以直接计算...
  • 摘要:本文将会说明有符号表示方法,有符号正负数之间的跳变,有符号负数的加减法,为什么采用补码等方面进行分析。 我是学过计算机原理的,也有有符号和无符号的概念,以及正码、反码、补码的概念。可是...
  • 十进制转换为二进制数以及浮点数存储方法

    万次阅读 多人点赞 2019-03-22 15:45:26
    一、十进制转换为二进制数 十进制转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制的整数部分和小数部分分别转换后,再加以合并。 1. 十进制整数转换为二进制整数 十进制整数转换为二进制...
  • 主要介绍了解决Java中的强制类型转换和二进制表示问题,需要的朋友可以参考下
  • 理解浮点数的二进制表示

    千次阅读 2020-05-30 23:14:14
    浮点数的二进制表示 符号位、尾数和指数(以64位浮点数为例) 0、规约和非规约 无穷大和空值NaN 二进制的科学计数法 浮点数在电脑中用二进制储存,约定以二进制的科学计数法来进行表示一个浮点数,类比十...
  • 二进制小数的表示

    千次阅读 2020-08-05 18:03:25
    (若为8位来表示,最高位用来表示正负号(即0与1 ),剩下7位为二进制数,小数点在最低位的右边)。 定点小数的表示: 规定小数点在符号位与最高数值位之间。 (若用一个字节表示,最高位为符号位,其他位为二进制...
  • 1.二进制转化为十进制 ...一把二进制数八位表示,bit8位代表符号 0正 1负 ; 十六进制也是可以使用八位表示例如FFFFFFFF可以表示 -1 在实际的使用中 十六进制的数据可能表示负数; 这个十六进制可能只有
  • 将信号转换为二进制表示的五种方法。 Arthur Petrosian概述的方法“有限序列的Kolmogorov复杂度和识别不同的前期脑电图模式”。 方法有: 1. 平均法:如果高于信号平均值,则样本分配 1 2. 修正区法:如果超出平均...
  • 二进制表示

    2018-05-10 21:31:00
    计算机中的,是用定点和浮点数表示。  定点:小数点位置固定的,整数和纯小数是用定点表示的,分别称为定点整数和定点纯小数。  浮点数:对于既有整数部分、又有小数部分的,一般用浮点数表示,...
  • 文章目录数据数值数据的表示方法定点表示方法浮点数的表示方法例子 数据 数值数据的表示方法 定点格式:计算机中所有数据的小数点位置是固定不变的,数值范围有限 浮点格式:小数点的位置随阶码的位置同步而...
  • 二进制正负数的表示方式:原码,反码,补码 今天学习汇编语言标志寄存器那一节,关于正负,忽然发现这个当初学的已经忘记了,特地来记录复习一下。 原码:最普通的二进制数字 反码:对源码取反 补码:反码的基础...
  • (易懂)负数的二进制表示方法

    千次阅读 2020-09-02 09:51:13
    一:表示法: 1、正数5的表示法 假设有一个 int 类型的,值为5,那么,我们知道它在计算机中表示为: 00000000 00000000 00000000 ...一个负数按照绝对值大小转换成的二进制数,然后最高位补1,称为原码。 比如 00000
  • float的二进制表示方式

    千次阅读 2018-11-07 20:33:15
    一.float 的二进制表示方式:
  • 在IEEE754标准下浮点数如何用二进制数表示以及为什么用移码代替补码 一、浮点数用二进制数表示 1、补充:十进制0.4如何转化为二进制数0110 0110(0110循环) float精度有限精确到6~7位 2、、 符号位,位于存储...
  • 输入一个整数 n ,输出该32位二进制表示中1的个数。其中负数用补码表示。 数据范围:−2147483648<=n<=2147483647 思路 Java实现 先判断数据n的正负,如果是负数的话,令n=-n,然后将n转化成二进制,再...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,165
精华内容 14,066
关键字:

二进制数如何表示正负