首页

文章

有关C语言中int型数据的取值范围的问题

发布网友 发布时间:2022-03-25 18:04

我来回答

3个回答

热心网友 时间:2022-03-25 19:34

是这样的,现在计算机中表示有符号数用的几乎都是2的补码表示法(two's complement),像C语言中的int、long等就是用这种表示法。而表示无符号整数(即非负整数,如unsigned int)用的是原码表示,计算其十进制真值时直接按权展开就行。

将用2的补码表示的二进制转化成十进制有好几种方法,最规范的一种是按下面的公式计算:

x[n-1]×(-2^(n-1)) + x[n-2]×2^(n-2)+ … + x[1]×2^1 + x[0]×2^0

其中n表示二进制位数,x[n-1]表示第n-1位数(从0开始,从右往左数),注意最高位是乘以(-2^(n-1)),有负号,其它项无负号。

比如设(1111)B用2的补码表示,上面的公式计算其十进制真值的过程是:

........(1111)B =1×(-2^3) + 1×2^2 + 1×2^1 + 1×2^0
................= -8 + 4 + 2 + 1
................= -1

所以(1111)B = (-1)D

实际上,2的补码表示的16位二进制,其十进制真值如下:

……二进制……………………十进制
0000 0000 0000 0000............0
0000 0000 0000 0001............1
0111 1111 1111 1110............32766
0111 1111 1111 1111............32767
1111 1111 1111 1111............-1
1111 1111 1111 1110............-2
1000 0000 0000 0001............-32767
1000 0000 0000 0000............-32768

所以楼主在上面写的“32767即二进制的1111111111111111”是不对的,(1111 1111 1111 1111)B表示十进制数的 -1。

2的补码表示法(其它表示法还有1的补码表示法、移码表示法等)是在计算机组成原理课程中讲的。
要了解更多2的补码表示法,楼主可以Google中搜索“Two's complement”,或者参考:

http://tieba.baidu.com/f?kz=278455703

热心网友 时间:2022-03-25 20:52

计算机内的数据都是补码形式的。因为正数的补码和原码相同,所以正数存放的是他的原码,负数是存放的他的补码(补码求法:取负数的绝对值写成二进制形式,按位取反,加1,就得到了他的补码),这样是为了计算机运算时的简单。【-32767】补=10000000 00000001 【32767】补=【32767】原=01111111 11111111
计算-32767+32767时计算机内的运算就是:10000000 00000001+01111111 11111111=00000000 00000000
是不是简单很多呢?这下明白了吧?

热心网友 时间:2022-03-25 22:26

最前面的一位是表示它的符号!
逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 高分!换显卡nvidia控制面板被我卸了,重新安装显卡驱动后没了nvidia控... 我的nvidia控制面板被卸载了 怎么找回啊 卸载后 这个画面看着很奇怪_百 ... 李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 进出口报关流程,越详细越好。谢谢大家指教。 双线桥不是看化合价升多少就标多少的吗?为什么CL2+2KI=2KCL+I2中I失... 出师表高锰酸钾有画面了吗 2021年幼儿园新学期致家长一封信 电脑屏幕一条黑线怎么办? 销售代理商销售代理商的特点 C语言各个数据类型取值范围 int类型的取值范围 c语言中整型数据的取值范围是怎么确定的??? 照片俩边白边是什么软件 哪个手机App能给照片加白边啊? 照片白边怎么弄的 A4相片旁边有白色边框的叫什么 手机上怎么把图片两边加上白色的? 怎么用手机美图秀秀留白 苹果手机怎么给照片加白框? 手机软件美图秀秀怎么弄照片旁边留白? 照片两边有白边的用什么软件可以加上或者是什么软件的边框,急求,越详细越好 怎么用美图秀秀手机版把照片两边留白 手机照片白边怎么弄? 怎么把手机图片加上白边? 美图秀秀怎么给图片添加白边, 就像拍立得拍出来的照片 在手机上怎样把照片儿整成两边是白色的 vivo手机的otg功能在哪里开启 vivo哪种手机支持OTG vivos5是type接口吗? 在turbo c中 Int型变量的取值范围是怎样计算出来的? c语言中,基本数据类型的数值范围是怎么计算出来的? iphone11怎么测距? 怎么打开iPhone水平仪? 苹果11水平仪能测弯曲么 苹果11pro使用技巧大全 求大神解答iphone水平仪在哪 苹果11为啥没有水平线功能? iphone11测距仪在哪里 iphone水平仪是怎么实现的 iphone水平仪有什么用 iphone水平仪怎么看 iPhone水平仪怎么调整角度 用水平仪测试iPhone是否弯曲真的有用吗? iPhone 5s手机水平仪工具要怎么打开 用水平仪测试iPhone 是否弯曲有用吗? iPhone6突出的摄像头,水平仪还怎么用 iphone 11使用指南 华为手机显示无法访问移动网络是怎么回事 华为手机为何打电话时为何显示无法访问移动网络?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com