1.进制概述
进制:进制也就是进位计数制,是人为定义的带进位的计数方法。对于任何一种进制—X进制,就表示每一位置上的数运算时都是逢X进一位。
在计算机语言中我们会遇到四种进制方法:二进制、八进制、十进制、十六进制。进制越大表现形式越短。
二进制 | 由0,1组成以0b开头 |
---|---|
八进制 | 由0,1,2,3,4,5,6,7组成以0开头 |
十进制 | 由0到9组成 |
十六进制 | 由0到9,A到F组成以0x开头 |
进制转换
1.任意进制转换十进制
位权展开法:二进制数、八进制、十六进制数转换为十进制数的规律是相同的。把二进制数(或八进制、十六进制数)按位权形式展开多项式和的形式,求其最后的和,就是其对应的十进制数。
例:
1011=1×2^3+0×2^2+1×2^1+1×2^0=1×8+0×4+1×2+1×1=8+2+1=11
2.十进制转换任意进制
一个十进制整数转换为任意进制整数通常采用除基取余法,直到商为0,逆序排列余数即可得到。
例:十进制转换八进制
8421BCD码
二进制编码的十进制数,简称BCD码(Binarycoded Decimal)。这种方法是用4位二进制码的组合代表十进制数的0,1,2,3,4,5,6 ,7,8,9 十个数符。4位二进制数码有16种组合,原则上可任选其中的10种作为代码,分别代表十进制中的0,1,2,3,4,5,6,7,8,9 这十个数符。最常用的BCD码称为8421BCD码。
二进制到八进制的简易方式 (100110) (3位为一组)
二进制到十六进制的简易方式(100110) (4位为一组)
2.原码反码补码
原码:是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1(0有两种表示:+0和-0),其余位表示数值的大小。
反码:正数的反码与其原码相同,负数的反码是对正数逐位取反,符号位保持为1。
补码:正数的补码与其原码相同,负数的补码是在其反码的末位加1。补码的正零与负零表示方法相同。
已知原码求补码
原码为0B11000100求补码。
首先对原码除符号位以外的数字按位取反得到反码0B10111011
然后对反码加1得到补码0B10111100.
已知补码求原码
补码为0B10111100求原码。
首先对补码减1得到0B10111011.
对除符号位以外数字求反得到0B11000100.
3.变量
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量通常是可变的。变量其实是内存中的一小块区域。
变量的定义格式:数据类型 变量名 = 变量值 。
为什么要定义变量?
用来存放同一类型的变量,并可以重复使用。
4.数据类型
数据类型在数据结构中的定义是一组性质相同的值的集合以及定义在这个值集合上的一组操作的总称。
变量是用来存储值的所在处,它们有名字和数据类型。变量的数据类型决定了如何将代表这些值的位存储到计算机的内存中。在声明变量时也可指定它的数据类型。所有变量都具有数据类型,以决定能够存储哪种数据。
数据类型可分为:基本数据类型和引用数据类型。
基本数据类型的详细讲解:
基本数据类型 | 字节数 |
---|---|
byte | 1(8bit) |
short | 2(16bit) |
int | 4(32bit) |
long | 8(64bit) |
float | 4(32bit) |
double | 8(64bit) |
char | 2(16bit) |
boolean | 1 |
整数默认是int类型的 , 浮点数默认是 double类型的
5.数据类型转换
5.1数据类型转换之隐式转换
隐式转换,规则是两种不同类型的数据在进行运算中,低类型数据自动向高类型数据转换。
数据类型转换必须满足如下规则:
- 不能对boolean类型进行类型转换。
- 不能把对象类型转换成不相关类的对象。
- 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
- 转换过程中可能导致溢出或损失精度
5.2数据类型转换之强制转换
强制类型转换我们再清楚不过了,即强制显示的把一个数据类型转换为另外一种数据类型。
强制转换的格式: 目标数据类型 变量名=(目标数据类型)(被转换的数据)。
注意:强制转换可能会造成精度损失。
6.运算符的基本用法
运算符:对常量和变量进行操作的符号成为运算符。
运算符的分类:
算术运算符
算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。
自增自减单独使用:放在操作数的前面和后面效果一样。如果参与运算使用:
放在操作数的前面,先自增或者自减,然后再参与运算。
放在操作数的后面,先参与运算,再自增或者自减。
自增和自减运算符只能用于操作变量,不能直接用于操作数值或常量。
赋值运算符
赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。
比较运算符
比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。
逻辑运算符
逻辑运算符主要用于进行逻辑运算。有单目运算符和双目运算符,其运算结果是布尔类型的值true和false。
运算符 | 名称 | 举例 | 备注 |
---|---|---|---|
! | 逻辑非 | !(9<6) | 单目运算符。结果为true |
& | 逻辑与 | x&y | 双目运算符 |
^ | 逻辑异或 | x^y | 双目运算符 |
&& | 逻辑与 | x&&y | 双目运算符 |
| 逻辑或 x|y 双目运算符
||逻辑或 x||y 双目运算符
三目运算符
条件运算符( ? : )也称为 “三元运算符”。
语法形式:布尔表达式 ? 表达式1 :表达式2
运算过程:如果布尔表达式的值为 true ,则返回 表达式1 的值,否则返回 表达式2 的值。