首先我们知道,计算机以补码的形式存储的,正数的补码是原码不变,负数的补码是原码的取反加1。

我们先来看+127,原码0111 1111对吧,若+128是多少呢,0111 1111 + 1 = 1000 0000 (原码),然后存储时,计算机一看是最高位为1,就保持符号位不变,后面7位取反加1,然后呢,进位舍弃,还是1000 0000(-128)。所以对于8位数据来说,+128 实际上变成 - 128。

对于-128我们来看,首先对于负数,计算机处理是保持符号位不变,剩余位先取绝对值然后取反加1,128(取绝对值)1000 0000 取反(1111 1111),加1 (1000 0000),所以-128的补码是1000 0000(原码和补码一样的),下面,我们来看一下-129的值,-128的原码为 1000 0000 减1 等于0111 1111 (原码计算就没有那些规矩了,直接计算就行了),然后存储,计算机一看正数,就直接存储了+127.

strlen()函数是返回一个字符串的长度,遇到'\0'结束。

为什么8位有符号数的取值范围是-128~+127相关推荐

  1. 为什么8位二进制的取值范围是-128~127

    我的疑惑 一个字节8位,其中最高位表示正数和负数,0表示正数,1表示负数.所以能够表示-128-+127. 01111111可以表示+127.正数这一段没有问题,负数这一段有两个疑问 11111111 ...

  2. 为什么int8的取值范围是-128 - 127

    为什么int8取值范围是-128 - 127 int8占1个字节,1字节(byte)占8位(bit)其中最高位代表符号位 1-负号:0-正号那么最大数值的二进制为: 0 1 1 1 1 1 1 1 换 ...

  3. 32 位的有符号整数的取值范围以及数值溢出

    short.int.long 是C语言中常用的三种整数类型,分别称为短整型.整型.长整型.在现代操作系统中,short.int.long 的长度分别是 2.4.4 或者 8,它们只能存储有限的数值,当 ...

  4. 8位有符号数的范围为-128 ~ +127 深入浅出探究

    8位有符号数的范围为-128 ~ +127,为什么不是 -127 ~ 127,-127 ~ 128等等? 这是一个困惑了我几年的问题,它让我对现在的教科书和老师极其不满! 从我二三十年前开始摸电脑时, ...

  5. 为什么8位有符号数的范围为“-128 — +127”?(转载加补充)

    这是一个困惑了我几年的问题,它让我对现在的教科书和老师极其不满,从我N年前开始摸电脑时,就几乎在每一本C++教科书上都说,8位有符号的取值范围是-128~+127,为什么不是-127~+127呢,后来 ...

  6. 汇编8位有符号数相加

    操作环境:emu8086 问题描述: 设从BUF开始存放有若干带符号字节数(8位),将它们相加并将结果(超过一个字节范围)存放到字单元SUM中 需要知道的知识: 1.8位有符号数在寄存器中是以补码形式 ...

  7. C语言各数据类型所占字节数和取值范围

    C语言中各数据类型所占字节数和取值范围 注:每种数据类型的取值范围都是与编译器相关的,以下为数据Visual C++32位环境下的参数,如想清楚了解自己所用编译器对各数据类型所占字节,可以用sizeo ...

  8. 汇编语言---计算有符号数算式的值

    汇编语言---计算有符号数算式的值 配置环境 要求 编辑程序 运行程序 后续 配置环境 首先双击下载程序进行下载.(没有安装程序的,可以下载我为大家准备的安装文件.) 不会安装的可以看一下文件 将de ...

  9. C语言——确定char、short、int和short变量有符号和无符号时的取值范围

    C语言--确定char.short.int和short变量有符号和无符号时的取值范围 #include <stdio.h> #include <limits.h>// dete ...

最新文章

  1. eyoucms range 范围判断标签
  2. [转载]Oracle 游标使用全解
  3. redis value多大会影响性能_redis面试总结
  4. python http协议获取对方的ip地址_http协议(一)基础知识
  5. 【无码专区7】括号序列(思维)
  6. java互斥锁的实现原理_java-深入分析synchronized原理
  7. 「雕爷学编程」Arduino动手做(36)——WS2812B 4位彩灯模块
  8. redis主从、哨兵、集群的区别
  9. 微服务分布式基础项目(免费答疑):SpringBoot2.X+SpringCloud+SpringDataJPA+Consul+Feign+Swagger (还会持续更新,不懂的可以问博主)
  10. ASP.NET ZERO 学习 —— (4) 开发手册之AccountController
  11. Dzd电子书格式转换程序Txt2Dzd
  12. 简述a股实时股票行情接口原理?
  13. 智能学习 | MATLAB实现Bee-CNN蜜蜂算法优化卷积神经网络图像分类预测
  14. 是谁扼杀了你的梦想?
  15. 托福高频真词List13 // 附托福TPO阅读真题
  16. 科研论文中的图片如何保证高清
  17. 提高效率必备软件合集
  18. 图片无损压缩(ubuntu 安装 )
  19. Unity官方图形教程 学习笔记(三) -- 线性工作流
  20. 下C语言做的五子棋,20年没输过

热门文章

  1. 网易MCTalk聚焦前沿技术 助力传统企业数字化转型
  2. GO语言eclipse开发环境搭建
  3. 动态规划法(九)想要更多例子?
  4. NET内存持续增长问题排查
  5. SQL Server 数据库巡检脚本
  6. objective-c 2.0的字面量Literals
  7. axis的对象交由spring管理的配置
  8. Office SharePoint Server 2007 中的 Workflow
  9. 产品说,我只需要一个有亿点复杂的查询界面
  10. SpringBoot中Profile配置和加载配置文件