跳到主要内容

2、数据类型、运算符

小伙伴们,又是元气满满的一天,今天继续开干!!!

一、数据的表示详解

昨天我们学习了变量,我们知道变量可以用来记录数据的。那么数据在计算机底层是以什么形式表示的呢?下面我们就学习一下数据在计算机中的底层原理。

1.1 整数在计算机中的存储原理

其实任何数据在计算机中都是以二进制表示的。那这里肯定有人问,什么是二进制啊?所谓二进制其实就是一种数据的表示形式,它的特点是逢2进1。

数据的表示形式除了二进制(逢2进1),八进制(逢8进1)、还有十进制(逢10进1)、十六进制(逢10进1)等。

对于二进制绝大多数同学,应该是非常陌生的。 没关系!来,大家跟着我的思路,你就知道二进制是怎么表示数据的了。

1.二进制中只有01两个数
首先十进制的0和二进制的0是一样的,十进制的1和二进制的1也是 一样的。但是十进制中 有2,但是二进制中就没有2

2.那么二进制是如何表示十进制的2呢?
1
+ 1
——————————
10 这里两个1相加,结果为2,由于二进制满21,所以最终结果10

3.那么二进制是如何表示十进制的3呢?
前面我们已经知道二进制10表示十进制的2,那么二进制10+1就表示十进制的3啊!
10
+ 1
—————————
11 十进制的3对应的二进制是11

4.那么二进制是如何表示十进制4的呢?
前面我们已经知道二进制11表示十进制的4,那么11+1就表示十进制的5
11
+ 1
—————————
100 十进制的5对应的二进制是100

你找到规律了吗? 你能不能依次写出5的二进制、6的二进制?

前面每算一个二进制数据都是采用+1的方式,逢2进1,一个一个算出来的。有没有更快的算出十进制对应二进制的方法呢? 这里学习一种方式:叫做除2取余法。

  • 除2取余法
1.怎么做呢?
答:让十进制数据连续除以2,直到商为0,余数反转

2.举例1:把十进制6转换为二进制
商 余数
6/2 3 0
3/2 1 1
1/2 0 1
然后把余数反转:6对应的二进制是110

3.举例2: 把十进制13转换为二进制
商 余数
13/2 6 1
6/2 3 0
3/2 1 1
1/2 0 1
然后把余数反转:10对应的二进制是1101

4.练习1:你能把十进制7转换为二进制吗?
自己试试吧!