进制、原码、补码、反码

1、四种进制

1(开)、0(关) 组成一个二进制数据:1 bit(比特)。

1 byte=8 bit , 1 k=1024 byte , 1 m=1024 k , 1 g=1024 m , 1 t=1024 g 。

二进制   :0、1组成,以 “0b” 开头。

八进制   :0、1、2、3、4、5、6、7组成,以 “0” 开头。

十进制   :0、1、2、3、4、5、6、7、8、9组成,默认十进制。

十六进制:0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f 组成,以 “0x” 开头。

2、其他进制转换为十进制

二进制->十进制   :每位数字本身*2的(n-1)次幂,如:0b101=1*2^2+0*2^1+1*2^0=5。

八进制->十进制   :每位数字本身*8的(n-1)次幂,如:0101=1*8^2+0*8^1+1*8^0=65。

十六进制->十进制:每位数字本身*16的(n-1)次幂,如:0x101=16*2^2+8*2^1+1*8^0=257。

十六进制字母对应数字:a(10)、b(11)、c(12)、d(13)、e(14)、f(15)。

3、十进制转其他进制

十进制->二进制   :十进制数除以2,除到商为0,从后往前将余数组合起来,如:5=(5/2=2【1】)=(2/2=1【0】)=(1/2=0【1】)=0b101。

十进制->八进制   :十进制数除以8 ,除到商为0,从后往前将余数组合起来,如:65=(65/8=8【1】)=(8/8=1【0】)=(1/8=0【1】)=0101。

十进制->十六进制:十进制数除以16,除到商为0,从后往前将余数组合起来,如:257=(257/16=16【1】)=(16/16=1【0】)=(1/16=0【1】)=0x101。

4、8421法:

二进制:1   、1  、1  、1 、1、1、1、1

十进制:128、64、32、16、8、4、2、1

二进制->十进制:1对应位置的数据直接相加,如:0b101=4+1=5。

十进制->二进制:从128开始依次递减,最后左侧补,如:5=(5-4=1【4,1】)=0b101。

5、拆分组合法:

二进制->八进制   :从右侧开始三位一组,不够左侧补灵,直接转换十进制,组合在一起,如:0b1101101=【001、101、101】=【1、5、5】=0155。

二进制->十六进制:从右侧开始4位一组,不够左侧补灵,直接转换十进制,组合在一起,如:0b1101101=【0110、1101】=【6、13】=0x6d。

6、原码、反码、补码

计算机内所有数据运算都是用补码进行的。

原码:就是二进制表示法,最高位(左侧)为符号位, “0” 表示正数, “1” 表示负数,如:7的原码为00000111,-7的原码为10000111。

反码:正数的反码与原码相同,负数的反码是对原码【符号位】以外的其他数字取反(0、1互换),如:7的反码为00000111,-7的反码为11111000。

补码:正数的补码与原码相同,负数的补码是其反码的末位(右侧)加1,如:7的补码为00000111,-7的补码为11111001。

转载于:https://www.cnblogs.com/liverpool/p/4746327.html

大龄屌丝自学笔记--Java零基础到菜鸟--006相关推荐

  1. 大龄屌丝自学笔记--Java零基础到菜鸟--028

    泛型,for循环增强应用,静态导入,可变参数,asList() 1.泛型 约束了数据类型,格式为 <数据类型>,如:ArrayList<int> aList=new Array ...

  2. 大龄屌丝自学笔记--Java零基础到菜鸟--001

    JDK的下载和安装 1.下载JDK 下载地址:http://www.oracle.com 选择操作系统对应的安装文件. 2.安装JDK 双击启动安装文件,下一步傻瓜式安装,安装路径不要有中文.空格. ...

  3. 大龄屌丝自学笔记--Java零基础到菜鸟--036

    GUI:继承体系.事件监听机制.适配器模型.Netbeans 1.继承体系 2.事件监听机制 事件源--事件定义(接口)--事件处理(实现类)--事件监听 3.适配器模型 接口(很多方法)--抽象适配 ...

  4. 机械转行java自学经历,零基础学java,血泪总结的干货

    机械转行java自学经历,零基础学java,血泪总结的干货 1.我为什么转行 2.转行之路 3.面试之路 自学路上的网站 Java教程 实践项目一站式学习 bilibili 自学书籍 <Java ...

  5. Java零基础笔记自用版(一)

    系列文章目录 一.Java零基础笔记自用版(一) 目录 系列文章目录 前言 一.⭐️Java概述 二.⭐️变量 三.⭐️运算符 四.⭐️控制结构 五.⭐️数组.排序.查找 写在最后 前言 最近在学习J ...

  6. Java零基础学习全套视频笔记

    Java零基础学习全套视频笔记 一.Java基础 1.注释 注释并不会被执行,是给我们写代码的人看的,防止项目结构代码太多忘记代码相关功能. 书写注释是一个非常好的习惯,平时写代码也一定要注意规范. ...

  7. 2021最新Java零基础自学路线图(全套视频教程)

    Java一直都是编程开发者的首选学习语言,不仅如此,Java也深受零基础学习者的青睐. 对于许多完全没有计算机基础的学习者来讲,想要学好Java语言并到达精通的水平,绝不是一朝一夕可以做到的.而是需要 ...

  8. 阿里巴巴大神发布的Java零基础笔记,实战教程多到手软,跪了

    前言 现值金三银四之际,是面试高峰季,很多学校开始校招,也是跳槽转行的最佳时机.根据数据显示,程序员是金九银十里最热门的行业,也是需求量最大的行业,但是程序员是个门槛低,但金字塔顶峰比较高的行业,意味 ...

  9. (尚硅谷java零基础教程)学习笔记day7/8-数组

    1.数组的概述 1.1 定义 数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理. 1.2 数组的相关概念 数组名 元素 数组的索引 ...

最新文章

  1. vmware nat模式原理探究,实现虚拟机跨网段管理
  2. LoadRunner录制回放常见问题及解决方案
  3. Linux命令(32):rar命令-解压
  4. 数据库表DML操作不了 可能是被锁了
  5. 程序员整理的各种不错的工具
  6. C语言0xc0000142错误,第一次用c++编译器出现奇怪的报错
  7. flask python web开发 可视化开发_Python + Flask 项目开发实践系列六
  8. redis desktop manager 连接外网redis服务器
  9. t580 thinkpad_聊聊ThinkPad T580:除了大屏,还有什么
  10. 2021垂直类电商私域化洞察报告
  11. (软件工程复习核心重点)第六章实现和测试-第七节:黑盒测试
  12. UNIDAC如何驱动MSSQL2000
  13. arm中的.a文件如何产生的_如何在IPFS中Pin一个文件?
  14. 公共云存储服务的可扩展性和性能
  15. STM32MP157 Linux系统移植开发篇16:Linux内核音频驱动移植
  16. java 计算个人所得税
  17. 实战-Android 系统读取Uboot环境变量实现
  18. (ACWing yxc算法基础课笔记)差分
  19. 解决桌面图标无法拖动的方法
  20. windows 查看开机关机日志

热门文章

  1. mysql 查看当前使用的配置文件my.cnf的方法
  2. 在cad如果用计算机,CAD如何使用快速计算器为中的变量区域功能
  3. 分位数回归的R语言实现
  4. solidworks工程图模板与图纸格式的区别_教你DWG如何导入为图纸格式
  5. 超分辨率分析(四)--Deep Image Prior
  6. DSP之外部设备连接接口之HPI
  7. 思科三层交换机开启ipv6路由功能_三层交换机实现路由功能配置示例与详解 (Cisco Packer Tracer 模拟器)...
  8. 顺序表(线性表的顺序存储)---C语言版
  9. redis面试题简义
  10. spark与Hive的整合入门