文档章节

JAVA二进制 十进制 八进制等是怎么转换的

土茯苓
 土茯苓
发布于 2017/03/27 14:09
字数 684
阅读 9
收藏 0

(1)、十进制->十进制

(高位)765(低位) = 510^(1-1) + 610^(2-1) + 7*10^(3-1) = 765;说明:括号为次方值;

十进制其实是每位的数字乘以10的当前位的倒数位置-1的值。

(2)、二进制->十进制

(高位)1011(低位) = 12^(1-1) + 12^(2-1) + 02^(3-1) +12^(4-1) = 11;

二进制转十进制其实是每位的数字乘以2的当前位的倒数位置-1的值。

(3)、八进制->十进制

0632 = 28^(1-1) + 38^(2-1) + 68^(3-1) = 2 + 24 + 664 = 26 + 384 = 410;

(4)、十六进制->十进制

0x11 = 116^(1-1) + 116^(2-1) = 1 + 16 = 17;

(5)、二进制->八进制(由于三位最大二进制111的十进制值为7,而八进制是逢8进1,所以二进制转换成八进制时可以采用3位3位算)

101011 = 101-011 = 5 – 3 = 053;

(6)、二进制->十六进制

10011101 = 1001 – 1101 = 9 – D(13) = 0x9D;

结论:

八进制数,其实就是二进制位中的3个二进制位为一个八进制位,二进制位不够分,左边高位补零即可;

十六进制,其实就是二进制位中的4个二进制位为一个十六进制位;

(7)、十进制->二进制

十进制除于2求余,倒序读成二进制;

这个的意思是::将一个十进制数除以二,得到的商再除以二,依此类推直到商等于一或零时为止,倒取将除得的余数,即换算为二进制数的结果。

**二进制转十进制快速方法 **

以8位 来演示:

1.第一种:

00000001      1
00000010      2
00000100      4
00001000      8
00010000      16
00100000      32
01000000      64
10000000      128

2.第二种:

00000001      1
00000011      3
00000111      7
00001111      15
00011111      31
00111111      63
01111111      127

3.第三种

10000000     128
11000000     192
11100000     224
11110000     240
11111000     248
11111100     252
11111110     254

举个例子: 11101011

可分为:

11100000(上面第三种类型) 224

00001000(上面第一种类型) 8

00000011(上面第二种类型) 3

我们通过记住上面三种类型的转换,再用加 法(加法口算你会吧)立即得到结果:235

方法二:

熟记以下排列,其实很Easy了,从右往 左,依次是前一个数的2倍:

256 128 64 32 16 8 4 2 1

随便写个数字比如48

48 = 32 + 16,所以在32 和 16所在的位置为1,其余为0,

转为2进制就是

256 128 64 32 16 8 4 2 1

0 0 0 1 1 0 0 0 0

二进制转十进制就更简单了,

比如随便写的一串 01111101

先写上 : 0 1 1 1 1 1 0 1

然后填充 128 64 32 16 8 4 2 1

十进制为 64+32+16+8+4+1=125

© 著作权归作者所有

土茯苓
粉丝 32
博文 86
码字总数 137882
作品 0
朝阳
高级程序员
私信 提问
java基础01(变量和注释、数据类型)

1,变量和注释   比如:姓名:xiaoming  年龄:18 1.1变量的基本概念   当需要在程序中记录单个数据内容时,则需要声明一个变量来处理,而变量的本质就是内存中申请一块存储单元用于存...

Java魑魅魍魉
2018/07/31
0
0
Java拾遗:014 - 二进制、进制转换及位运算

二进制 二进制是计算机中广泛采用的一种数制,由0和1组成,进位规则为“逢二进一”,如:0001表示十进制中的1,0010表示十进制中的2。二进制拥有大量非学有用的特性,详情参考:百度百科:二...

一别丶经年
2018/08/02
102
0
进制之间的转换及Java代码实现

N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F。 八进制 八进制,Octal,缩写OCT或O,一种以8为基数的计数法,以0开头(注意,0是零而不是字母O),采用0,1,2,3,4,5,6,7八个数字...

G_66_hero
2018/09/18
0
0
[Java教程 05] 常量与进制概述

前言 上一节我们介绍了注释、关键字与标识符,本章给大家介绍一下常量,准备好没有,要开车了! 常量 常量概述 在程序执行的过程中其值不可以发生改变 Java中常量分类 字面值常量 自定义常量...

呆萌钟
2018/04/03
0
0
java的常量、变量及相关知识

今天付老师给我们说了java基础的第二课。主要说了很多常量、变量、进制转换和码表方面的内容。传智的老师果然还是很牛啊,一些以前看书不能看懂的问题一看就了解了。 常量(Constant),就是恒...

emiykurosite
2012/03/29
108
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 8 Optional:优雅地避免 NPE

本篇文章将详细介绍 Optional 类,以及如何用它消除代码中的 null 检查。在开始之前首先来看下什么是 NPE,以及在 Java 8 之前是如何处理 NPE 问题的。 空指针异常(NullPointException,简称...

武培轩
32分钟前
9
0
CountDownLatch实现的并发框架

目录结构 package com.**.**.base.support.executor;import lombok.NoArgsConstructor;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;imp......

MR_TE
33分钟前
12
0
学习记录(day06-事件、按键修饰符、计算属性)

[TOC] 1.1 事件修饰符/按键修饰符 vue 通过事件修饰符对dom事件细节进行控制 <标签 @事件.修饰符="函数"></标签>.prevent ---阻止浏览器默认行为.stop ---阻止浏览器事件冒泡.e...

庭前云落
53分钟前
9
0
006-Sigle-基于blockstack去中心化博客

本篇文章主要讲解有关基于Blockstack的Sigle是一个去中心化的博客项目; 官网地址:https://www.sigle.io/ Github地址:https://github.com/pradel/sigle 页面展示: 介绍: A beautiful de...

Riverzhou
今天
22
0
驰骋工作流引擎开发平台属性功能的隐藏显示介绍

关键字: 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 表单引擎 工作流功能说明 工作流设计 工作流快速开发平台 业务流程管理 bpm工作流系统 java工作流主流框架 自定义...

孟娟
今天
19
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部