java 二进制加法运算_零基础学Java之数据类型和运算符,第一讲:进制及其转换...

10ae61df66d478fdb0865a2b6abc40c2.png

主要内容

进制及其转换标识符、关键字常量变量八大基本数据类型final常量和Scanner输入算术运算符赋值运算符关系运算符逻辑运算符位运算符条件运算符运算符的优先级别基本数据类型的类型转换学习目标

5066eb38cd8b2027baef05643d3bb984.png

一、进制及其转换

1.1 进制类型

十进制:人类使用

二进制:计算机使用

八进制和十六进制:为了更好的表示二进制(缩短二进制长度)

a7f374a5a98e0a7e838f755de58ffa3d.png

各进制数之间的关系

0b909b11451a82cd6026db1e9ed3867c.png

1.2 计算机为什么使用二进制

物理上容易实现,可靠性强;运算简单便于进行逻辑运算。二进制,是计算技术中广泛采用的一种数制,由德国数理哲学大师莱布尼茨于1679年发明。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”。

数字计算机只能识别和处理由‘0’.‘1’符号串组成的代码。其运算模式正是二进制。

二进制对应两种状态,广泛应用于电子科学。比如:可以对应电子器件的开关状态、对应信号电压状态(+5V等价于逻辑"1",0V等价于逻辑"0")、对应卡带是否打孔状态、电磁存储(磁体状态:南为0,北为1)等等。

二进制广泛应用于我们生活的方方面面。比如,广泛使用的摩尔斯电码,它由两种基本信号组成:短促的点信号“·”,读“滴”;保持一定时间的长信号“—”,读“嗒”。然后,组成了26个字母,从而拼写出相应的单词。

956bc89975d43dc33a6aa008dd7602e4.png

当然,我们没有必要记住这些。如果一定想学,记住SOS就好了^_^

f4f198f263ffa7d1d78fde5af3c06e11.png

其实有人说在中国三千年前的著作《周易》中存在二进制数的使用和二——十进制数的转换编码。而且,更简单、更先进、更科学。你认为是这么一回事吗?

2297a41ea4ea8fc823dc3e2daea4c396.png

在线进制转化的工具: https://tool.lu/hexconvert/

1.3 进制转换

二进制转十进制二进制转十进制采用“权相加法”。

5b9c08f5a544a76b5524059c862dc54b.png

十进制转二进制十进制整数转换为二进制整数采用"除2取余,逆序排列"法。

b375d4f67f166ac6755ece89d814aa71.png

1.4 计算机数据存储单位

位 bit最小值 0

最大值 1

表示的数的范围 0-1(21-1)

字节 byte:8bit最小值 00000000

最大值 11111111

表示的数的范围 0-255(28-1)

字符 :16bit最小值 0000 0000 0000 0000

最大值 1111 1111 1111 1111

表示的数的范围0-65535(216-1)

2a35043c305c0e8cb0ca17627383381d.png

KB、MB、GB、TB1KB = 1024Byte ≈103Byte

1MB = 1024KB ≈ 106Byte

1GB = 1024MB ≈ 109Byte

1TB = 1024GB ≈ 1012Byte

1.5 计数范围

符号位二进制数如何表示正数和负数呢?

使用最高位作为符号位,0代表整数,1代表负数;其余数位用作数值位,代表数值。

8d6d804808d6aea391decf4559e92e8f.png

字节 byte表示的数的范围无符号数:0-255(28-1) 256个数

有符号数:-128(-27)--127(27-1) 还是256个数

字符表示的数的范围无符号数 0-65535(216-1) 65536个数

有符号数 -32768(-215)-----32767(215-1) 还是65536个数

1.6 字符集和字符编码

计算机中储存的信息都是用二进制数表示的;而我们在屏幕上看到的英文、汉字等字符是二进制数转换之后的结果。通俗的说,按照何种规则将字符存储在计算机中,如'a'用什么表示,称为"编码";反之,将存储在计算机中的二进制数解析显示出来,称为"解码",如同密码学中的加密和解密。在解码过程中,如果使用了错误的解码规则,则导致'a'解析成'b'或者乱码。

字符集(Charset):是一个系统支持的所有抽象字符的集合。字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。

字符编码(Character Encoding):是一套法则,使用该法则能够对自然语言的字符的一个集合(如字母表或音节表),与其他东西的一个集合(如号码或电脉冲)进行配对。即在符号集合与数字系统之间建立对应关系,它是信息处理的一项基本技术。通常人们用符号集合(一般情况下就是文字)来表达信息。而以计算机为基础的信息处理系统则是利用元件(硬件)不同状态的组合来存储和处理信息的。元件不同状态的组合能代表数字系统的数字,因此字符编码就是将符号转换为计算机可以接受的数字系统的数,称为数字代码。

常见的字符集和字符编码

ASCII (阿寺克)ASCII ((American Standard Code for Information Interchange): 美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,到目前为止共定义了128个字符。每个字符用1个字节表示。

9030d76e816084dd6900885deee82cc9.png

◆ 0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符),如控制符:LF(换行)、CR(回车)、DEL(删除)、BS(退格)等

◆ 32 空格

◆ 48~57为0到9十个阿拉伯数字。

◆ 65~90为26个大写英文字母

◆ 97~122号为26个小写英文字母

ISO8859-1◆ Latin-1,是西欧常用字符,包括德法两国的字母

◆ 1个字节,兼容ASCII码

GB2312◆ 大陆使用最早、最广的简体中文字符集;兼容ASCII编码

◆ 每个汉字用2个字节表示

GBK◆ GB2312的扩展,可以表示繁体中文

◆ 一个汉字用 2个字节表示

GB18030◆ GBK的扩展,最新的规范,不仅可以表示汉字、还可以表示维吾尔文、藏文等多个少数民族的字符

◆ 一个字符用 2个字节表示

BIG5◆ 台湾的大五码,表示繁体汉字 2个字节

Unicode ----UTF-8 UTF-16◆ 统一码、万国码、单一码 通常认为一个字符占用2个字节

◆ 为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求国际通用字符集。

◆ 目前的Unicode字符分为17组编排,0x0000 至 0x10FFFF,每组称为平面(Plane),而每平面拥有65536个码位,共1114112个。然而目前只用了少数平面。第0平面(BMP)最为重要。

◆ Unicode 编码共有三种具体实现,分别为utf-8,utf-16,utf-32,其中utf-8占用一到四个字节,utf-16占用二或四个字节,utf-32占用四个字节

ANSI:◆ 并不是某一种特定的字符编码,而是在不同的系统中,ANSI表示不同的编码。

◆ 在简体中文Windows操作系统中,ANSI 代表 GBK 编码;在繁体中文Windows操作系统中,ANSI代表Big5;在日文Windows操作系统中,ANSI 代表 Shift_JIS 编码。

0863ff091ae5228021c784cc740bf04a.png

将持续更新内容,还请持续关注!更多内容请点“主页”查看

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值