00:02
同学们,我们来看一下二进制和位运算。前面我们讲到。未运算呢,它跟二进制有密切的关系。当时呢,我们在讲二进制的时候,我们说放在后面来讲,就是跟二进制放在一起讲,对不对,所以说现在呢,我们来看一下二进制,然后呢,再给大家说一下未运算是怎么操作的,那首先呢,我们来看一下进制的这个概念。禁制的这个概念。首先呢,对于整数而言,有四种表示方式,在我们C语言里边一种呢,就是二进制。那么什么叫二进制呢?简单的讲,就是逢满二进一。满二进一呢,那在我们二进制里面,其实真正只有零和一这两个数。因为它到了二,他就进一了,所以说它只有零和一,就跟我们十进制一样,十进制其实呢,只有零到九,对不对,没有一个叫十的,十其实是由一和零组成的,是这样子吧,同学们。
01:10
所以说二进制它的特点是零一组成满二进一。那么呃,在C语言中呢,没有二进制常数的表示方法,有些语言是可以的,比如说有些语言是0B0011,它就这个用这种方式来表示二进制,在C语言里面呢,它没有直接用一个乘数形式来表示二进制的,明白这个意思吧,十进制呢,是用零到九来表示的,那么它是满十进一。满十进一,比如说我们到九了,九再加一不就十吗?它就进一位,进一位变成什么呢?变成一零了。对,八进制是用零到七来表示的,没有八号在八进制里面是不会出现八的。它是零到七,因为它是满八进一,八进制在前面我们是不是讲过用零开头,比如说我写个011,这个你要看出来,它其实代表的是一个八进制的数。
02:12
前边我们是提过的,还有一个在我们进制里面,还有一个叫16进制的,16进制呢,它是用零到9A到F表示的,那我这要说一下,它是满16进一,而且呢,它是用0X。小写的X或者大写的X都可以,此处A和F不区分大小写,那我说一下这个AF是什么意思呢?简单的说这样的一个意思,A呢,它就表示十了。B呢,它就表示11这个理解,C呢,它就表示12 ABCDD表示13。CDE表示14。F。F表示15。
03:01
那有些数,有些同学老师,那16谁来表示呢?注意满16就进一了,因此呢,它不会再有其他的字母了,要到F就是它最大的一个单个的表示数,那我举个例子,比如说这有一个0X2,一。21AF,它如果在这个基础上加了一个一,会变成一个什么数呢?大家看加一这个F呢,本身是15,是不是它加一过后呢?同学们可以看到,一旦这个F加一,其实就相当于15加一,15加一就进一位。那进一位按照16进值来讲呢,这个位置就变成了零,而A呢,进了一位,A进了一位不就是变成B了吗?所以说。如果按照刚才这个数加一的话,就变成了0X21B0这样子的。这点大家一定要非常清晰,就说我们在这个C语言里边呢,有二进制,十进制,八进制,16进制,以及他们的一些规则,那我举几个例子,比如说这个是什么进制啊,同学们,这个就是十进制。
04:12
是不是,而这个是什么呢?同学们,前面是以零开头的,是什么进制啊,八进制。这个看出来吧,那下面这个以0X打头的是什么进制?同学们是十六十六进制。明白好,这是意思,那么我们再来看一个静置的示意,呃,这个这个图示。我们看看在这个整个三四种进制里面,他们怎么表示的,用零零,大家都是零。对,一大家都是一,那么到了二呢,大家看十进制用26进制也是二二,但是二进制它是从二进一变成一零了三。这三个三个进制一样,到了这个二进制一零加一不就是一了吗?这个零零变一对不对,因为它是低位嘛,然后四这个也是一样的,这个地方加四你看啊,注意听看这个111再加一个一的话呢,我们看它是怎么来的。
05:14
呃,逢二进一,所以说这个呢,就变成零了,借了一位到这个位置,那又是一一借了一位,它不是一加一又是又进一位吗?变成一零,这进了一位零啊100这样来的。其实跟我们十进制的这种规则是一样的,就是大家都是满了,满了多少位,然后往就往高位高位走。到五也是一样的,到了五过后呢,这边是100100加一不就变成101了吗?就这样来的,六也是这样来的,我就不说了,好吧,七一样的,八关键点来了,大家看八的时候呢,因为八进制是。满八进一,所以说这个七加一个一过后呢,它变成八,变成八呢,就进一位,这个七就变零,而进了一位,这个就一零了,也就是说八进制其实是一零。
06:08
当然前边呢,有一个零哈,有个零,只是我没有写而已。没有写而已,那这个大家看清楚了,接着往下看到了九,看到了九过后呢,这个八进制原先不是一零吗?再加一个一就变一一二进制我就不说了。大家看到了十十过后呢,我们这个16进制,九加一变十,九加一变十,十呢用A表示,注意这个A呢,可以是大写的A,也可以是小写的A,无所谓,它不区分,那这边呢,一加一一加一个一变一二,呃十进制二进制是10100100加一,这个一低位进一个一就是1010了。好,11进制我们就不说了,12好,我们接着往下看,注意看这一节。
07:04
到这一节15的时候呢,16进制是F表示的这边是幺七这边是。四个一,那到了16,注意观观察16。因为16进制是这个16进制是满16进一,那么这个F再加一个一变成16了,16就进一个,进一个就变成一零了,当然本身前面是有个0X的,我没有写而已,好,我没有写而已,但是这个大家应该是明白的,就是F,就是同学们看到这个F,这个F加一个一不是变成16了吗?16,然后进一个自己低位变成零,高位变成一,依此类推,好。同学们看一下,你看这个幺七加一个一为什么变成二零呢?因为七加一变八变,变八过后,这个低位就变成零了,而这个一呢,借了一位过来,是不是就相当于它升一位变成二零了,这是小学,咱们学小学加法的时候,其实都知都知道是怎么回事,那下面呢,我就不一个讲了,也就是说。
08:09
通过这个图示呢,就是通过这两张图,大家心里面要明白我们的十进制,16进制,八进制和二进制,它的这个数的一个具体的表示方法,以及满多少进多少的一个理解,比如说十进制是满十进一,怎么理解16进制是满16进一,八进制是满八进一,二进制是满二进一,这个理解大家就到位了。好吧,这就是我们对禁制的一个初步的认识,这是我们对禁制的一个初步认识,好,这一讲呢,我们就先给大家说到这里。
我来说两句