一个数在计算机中以二进制表示,叫做机器数。机器数是带符号的,在计算机中用一个数的最高位存放符号,正数为0,负数为1.

原码:  就是符号位加上其值的绝对值,即用第一位表示符号,其余位表示值。

反码:  正数的反码就是其本身。负数的反码是在其原码的基础上,符号位不变,其余各个位取反。

补码:正数的补码就是其本身。负数在反码的基础上+1;

基本数据类型byte 1个字节 8位 取值范围为-128~127;

基本数据类型int  4个字节  32位 取值范围为 -2^32/2~2^32/2-1;

如果130转为byte类型是多少?

1、130转为二进制为: 1 0 0 0 0 0 1 0;

2、因为130是int类型,所以在内存中表现的形式为:00000000  00000000  00000000  10000010

3、原码:1 0000010    原码变反码,最高位符号位不变,其他数值位1变0,0变1得反码
反码:1 1111101    反码变补码就是反码加1得
补码;1 1111110(第一位为符号位,0表示正数,1表示负数)

4、最终的看到的结果就是
1     1111110最高为是符号位不运算,数值为转化为十进制是64+32+16+8+4+2=126符号位负
所以为-126

即int类型的数值130强制转换为byte类型的值为-126。

在Win10下搜索计算器,在计算器中点击‘程序员’可以很方便地进行十六进制、十进制、八进制、二进制之间的转换。

快速计算原码的补码:原码的绝对值+补码的绝对值=256;如

原码为142 它的补码为-114;142+|-114|=256;

将一个超出byte范围的值转为byte的方法相关推荐

  1. byte的取值范围-128~127原理

    我们都知道byte为8位二进制数据,最高应该是11111111,为255(10进制).但是为什么byte的取值范围为-128~127呢? 因为不管是Int类型还是byte类型,当用二进制定义整数时候, ...

  2. java将一个整数按字节输出_在java中的整数类型有四种,分别是 byte  short int long 其中byte只有一个字节 0或1,在此不详细讲解。其他的三种类型如下:1、...

    在java中的整数类型有四种,分别是 byte  short int long 其中byte只有一个字节 0或1,在此不详细讲解. 其他的三种类型如下: 1. 基本类型:short 二进制位数:16 ...

  3. java byte to integer_Java中的Byte转为无符号的Integer

    Java的Byte都是有符号的(singed),而Byte又是8位的,如何转为无符号( unsigned)的呢? 素材: byte   a=11010110 (singed : -42  . unsi ...

  4. byte的取值范围为啥是[-128~127](超详细教学,建议收藏)

    今天收到铁子问了一个问题,在java中的byte的取值范围为啥是[-128,127],而不是[-127,127];于是针对这个问题继续水一篇博客: 一.解释为啥会提出[-127,127]的问题 在字节 ...

  5. java中 byte 取值范围_【二进制基础-java中byte的取值范围-推导过程】

    java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为"1"表示负数. 正数补码为其本身: 负数补码为其绝对值各位取反加1: 例如 ...

  6. java中 byte 取值范围_java中为什么byte的取值范围是-128到+127

    概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为"1"表示负数. 正数补码为其本身: 负数补码为其绝对值各位取反加1: ...

  7. Java的byte类型取值范围为什么是负128到正127呢

    Java的byte类型取值范围是-128~127为什么负数是128正数到127呢 概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为"0"表示正数,最高位为&quo ...

  8. 047_输出一下byte的所有值

    1. 输出Byte的最小值-128到最大值127 public static void printByte() {int count = 0;for(byte i = Byte.MIN_VALUE; ...

  9. oracle byte 转string,C# 中 byte 转化成string

    C#编程过程中将Byte数组转换String是我们经常碰到的问题,那么如何解决C# Byte数组转换String呢?那么我们来看看具体的涉及到的方法以及关于如何解决C# Byte数组转换String的 ...

最新文章

  1. 腾讯云的Ubuntu 18.04的镜像地址
  2. 几个有趣的名词--语法糖、语法盐等
  3. 跳转路径时资源路径加/和不加/的区别
  4. mysql自增字段不连续_MySQL中自增主键不连续之解决方案。(20131109)
  5. 以智能数据架构,挖掘增长金矿
  6. #ifdef __cplusplus 的用法(C语言调用c++代码)(extern “C“)
  7. R开发(part11)--基于S4的面向对象编程
  8. 怎么形容智能冰激凌机器人_有关于形容描写冰激凌的句子及图片
  9. 程序员绩效总结_年终总结怎么写?
  10. Codeforces Round #424 (Div. 2)
  11. c语言 指针 地址溢出,堆栈溢出,指针在C中
  12. 用linux运行vasp,科学网—VASP使用 - 李继存的博文
  13. 《HRNet-OCR:Object-Contextual Representations for Semantic Segmentation》论文笔记
  14. Excel·VBA考勤打卡记录数据整理
  15. 电脑需要u盘启动的解决办法--蓝屏修复
  16. 神秘消失的Windows 9,如今真被人做出来了
  17. 微信支付--预支付(统一下单)
  18. JAVA工程师最新面试题(来源于互联网)
  19. go html vue,[终极巨坑]golang+vue开发日记【三】,登陆界面制作(二)
  20. HTTP HTTPS

热门文章

  1. python+selenium+EcShop 学习UI自动化测试和感受自动化测试的魅力(UI自动化)
  2. Pycharm 修改html注释
  3. Magnitude-based weight pruning with Keras(keras模型权重裁剪)
  4. Python 全栈系列196 全栈技术梳理
  5. 手机进水的处理方法 进水手机一样能够恢复如新
  6. c语言---switch的用法
  7. 【c++师傅领进门,修行靠个人】第六篇:内存管理
  8. python抽卡人生游戏
  9. Python中偏函数的理解
  10. python中函数返回值是函数的函数的用法 func()()