二进制 正数 负数 源码反码补码
- 二进制的正负数 .
HEX (十六进制) EA EA
Oct(十进制) 有符号 无符号
-22 234
Bin (二进制) 1110 1010 11101010
备注:有符号数
正数 源码,反码,补码都一致
负数 详解见下,例如 :11101010
1 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | ||
符号位(不参与取反与+1行为) | |||||||||
1)取反 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 得到反码 |
2)+1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 得到补码 |
1(代表负数) |
-22 |
- java byte与16进制字符串相互转化
Hex String --> Byte
//1 Hex String --> Integer //2 Integer --> Byte public Byte convertFromHexString2Byte(String hexStr){ Integer i = Integer.parseInt(hexStr,16); Byte b = i.byteValue(); }
Byte -->Hex String
//1 Byte -- >Integer //2 Integer --> String public static String fromByte2HexString(Byte b){Integer i = b.intValue();String s = Integer.toHexString(i);return s; }
一个byte占用8位,一个HEX字符用4位表示 ===>1个byte 代表 2个HEX字符===>
[] [] [] [] [] [] [] []
高4位 低4位
H L
- byte类型取值范围(byte 占8位,有符号 -128 --- 127 )
推理
含义 | ||||||||||
最大正数 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | ==>127 |
20 +21+….+28-1 =28 -1 =127 |
最大负数 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ===>128 |
-27 |
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 反码 | ||
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 补码 | |
取值范围
byte | 1 字节 | 8bit | -2(7)---2(8)-1 |
有符号
-2n-1 --- 2n-1 -1 |
short | 2字节 | 16bit |
-215 -215-1 |
同上 |
int | 4字节 | 32bit |
同上 |
|
long | 8字节 | 64bit |
同上 |
|
char | 2字节 | 16bit |
0--216-1 |
无符号
0—2N-1 |
- byte ==》 HEX String 转化
public static String byte2HexString(byte[] b){String ref = "";for(int i=0; i<b.length;i++){/* Integer.toHexString(b[i]&0xFF); 作用是 int(十进制 有符号) ===> String(十六进制) b[i]&0xFF 作用是 将byte转换为int类型 byte 8 位 int 32位 byte转int 位数不够需要补位 补位有偏差故需要清零高24位 即&0xFF*/ String hex = Integer.toHexString(b[i]&0xFF);if(hex.length()==1){hex='0'+hex;}ref+=hex.toUpperCase();}return ref; } /* FF 十六进制 1111 1111 二进制 -1 有符号 十进制 255 无符号 */
- 与关系
两边都成立才可以为真
1&1 --》1
1&0 --》0
0&1--》0
0&0 --》0
清零 ==》 &0
置为1 == 》&1
byte b = 24;
int i = b&0xFF; //清零高24位
转载于:https://www.cnblogs.com/cici-new/archive/2012/11/28/2792491.html
二进制 正数 负数 源码反码补码相关推荐
- 源码 反码 补码详解(为什么计算机存储数值为补码形式?)
一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1.机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数.机器数是带符号的,在计算机用一个数的最高位存放 ...
- 源码/反码/补码 (转)
大家都知道数据在计算机中都是按字节来储存了,1个字节等于8位(1Byte=8bit),而计算机只能识别0和1这两个数,所以根据排列,1个字节能代表256种不同的信息,即28(0和1两种可能,8位排列) ...
- java数字取反_java中源码反码补码与取反的理解
数字在计算机里是按照二进制来表示的. 箭头朝哪边就是朝哪边移动 补码,反码,和源码 负数原码转化为补码:符号位不变,数值位按位取反,末尾加一. 负数补码转化为原码:符号位不变,数值位按位取反,末尾加1 ...
- 二进制运算以及源码、补码、反码概念讲解
前言 在学习框架源码底层时,有非常多的二进制运算,由于大学学习计算机基础时开小差,没有学习牢固,所以在看底层源码的算法逻辑时遇到二进制运算比较吃力,遂通过一篇博文来总结下二进制运算,记录一下. 读者认 ...
- 二进制八进制十进制十六进制及原码反码补码
1.进制的介绍 定义:进位制,人们规定的一种进位方式:表示某一位置上的数,运算时是逢X进一位. 十进制是逢十进一:二进制是逢二进一,八进制是逢八进一: 常见进制:二进制,八进制,十进制,十六进制: 学 ...
- 2.2.1 定点数的表示 原码 反码 补码 移码
没有未来的未来不是我想要的未来 o(╥﹏╥)o (つД`)(ノへ ̄.)哭了 学习的是定点数的表示,那我们首先来认识一下什么叫定点数与定点数相对应的另一个概念叫做浮点数所谓定点数就是指小数点的位置固定不 ...
- 关于 原码 反码 补码 位运算
二进制 原码:最高位为符号位,0为正 1为负 正数的原码 反码 补码 都是相同的 反码:负数的反码为原码符号位不变 其它对应变化(1变0 0变1) 补码:等于 反码+1 3^-3 =? 运算过程 - ...
- java进制原码_Java 一一 进制、原码 反码 补码、移位操作
进制 二进制 和 十进制 相互转换 十进制 和 十六进制 相互转换 原码,反码,补码 原码.反码.补码: 在计算机内, 有符号数有三种表示法: 原码, 反码, 补码. 所有的数据的运算都是采用 补码 ...
- 负数原码与补码之间相互转换
背景:计算机内部用补码表示二进制数.符号位 1 表示负数,0 表示正数. 正数:无区别,正数 的原码= 反码 = 补码 重点讨论负数 若已知 负数 -8,则其 原码为:1000 1000,(1为符号位 ...
最新文章
- 网易云易盾荣获雷锋网颁发的年度最佳视频内容审查奖
- Android Thread第二次Thread.start()报错的疑问
- MOSFET驱动器汇总 : 单个N-CHANNEL,半桥,全桥,3项桥
- mysql与配偶同性_mysql 左,右,内连接
- .NET中委托写法的演变(上):委托与匿名方法
- C#中一些常用的方法使用
- 对于C语言可移植性的思考
- 一文7个步骤教你搭建测试web测试项目实战环境,
- System x 服务器制作ServerGuide U盘安装Windows Server 2003 操作系统
- 数字图像处理第三次试验:图像复原、图像分割
- 如何将网页另存为PDF
- python3中26个英文字母排序_26个英文字母的排序是怎样排的?
- Linux 下编译出现“ln failed to create symbolic link operation not supported”
- 反向代理Reverse proxy
- Lettuce在Spring boot中的使用方式
- 傅福:我可能是杭州接受BCH付款的第一个数码商家
- java求2到100内的素数_java学习日记-基础-列出2~100内的素数
- 扒开思派健康招股书:大数据的面子,“卖药”的里子
- ubuntu20.04安装小鹤双拼输入法挂接音形改简体中文Rime
- Quadro P5200 - 最强大的移动工作站显卡 专门为了惠普 VR Z 背包电脑而发布
热门文章
- c语言 方程改main的值_C语言和汇编语言是什么?他们之间可以有怎样的合作?为你解析...
- webpack打包流程_了不起的 Webpack 构建流程学习指南
- 红外倒车雷达原理图_自动驾驶汽车传感器技术解析—毫米波雷达
- 计算机excel图表考试题库,2016年职称计算机考试Excel操作题库
- 接口和抽象类的区别?
- 报错,java.lang.NoSuchMethodException: java.awt.print.Pageable
- 访问订单列表时报错404
- 2.Java 面试题整理(基础篇二)
- Java学习笔记1.1.1 搭建Java开发环境 - Java概述
- C++案例:C++版生命游戏