00:00
各位,我们接着来看构语言里面的进制,那本身哈,本身我们现在应该为大家讲未运算,确实是应该讲位运算,但是呢,我刚才讲过未运算它是跟二进制。跟我们计算机这个二进制呢,有密切的关系,所以说呢,我需要先给同学们讲一下进制这个知识点。而且呢,我个人认为啊,就是说作为一个程序员来讲呢,我们应该对禁制有些了解。这呢也是我们做一个程序员的基本功,不然的话,你将来参加工作以后,别人给你谈一个二进制,八进制,16进制,对吧,你都完全是蒙圈的,这也说不过去,而且呢,实际上大学里边的科班就是你,如果你大学里面学的是计算机专业,那都会讲二进制或者是八进制或者16进制,都会说,那么我们来看一看进制是个什么概念,同学们,跟上老师思路,进制是这样子的啊,同学们。对于整数来说呢,呃,在构元里面,它对于整数来说啊,我们嗯,有四种表示方式,一般来讲有二进制,有十十进制,八进制,还有16进制。
01:11
那那有些同学老师你能说二进制16,十进制,八进制,16进制分别是什么吗?没问题,我可以告诉大家,很简单,二进制是这样子的。零和一。它的运算规则是满二进一,就说在二进制的这个世界里面呢,它只有零和一,没有别的数,没有二,说老师二怎么办呢?那如果到了二,他就进进一位。就这样子的。那十进制当然是我们生活中用的最多的了。十进制用的最多是满十进一。那么八进制呢?它是用零到七来表示满八进一,在八进制里面没有八。那到到了八怎么办呢,进一位。而且呢,它如果在构里面,它是用零打头来表示八进制的,待会我举个例子,16进制,以此类推,16进制是零到90的时候。
02:04
用什么表示呢?用A表示,注意它不区分大小写。就是说十就用A表示。11就用B表示,到了15呢,就用F表示,16怎么办呢?没有16不是abcde啊,那大家说老师诶16是不是按照F下面就是ABCDEEFG了,不对,满16就进一位了。它用0X这个X不区分大小写来表示明白,那我先简单的说了一下,二进制,十进制,八进制,16进制的这么一个区别,那后面呢,我会展开讲解,所以大家呢,先稍微的忍耐一下,我给大家举几个例子,举几个简单例子,让他先体验一下这个用法来吧。我呢,给大家举例说明这个近视的介绍。打开笔记。好,我们现在说是十进制。对吧,我们讲进制,讲完进制过后呢,我们才能为大家讲解什么呀,我们才能才能为大家讲解位运算。
03:05
那刚才老师说到了这么几个概念。这么几个概念,那每一个呢,我都分别举几个例子给大家来探讨一下。搁这搁一下说二进制。二进制是用零和一表示十进制对吧,16进制,而且呢,我们说到十进制它的AF不区分大小写,那我每个举例说明一下二进制先说一下啊,在。在go语言里面呢,它沿用了C语言的语法特征,没有办法直接表示一个二进制。除非你按二进制输出可以,我说一句啊,在go浪中,Go浪中。勾当中不能不能直接不能直接使用二进制,二进制二进制来表示一个整数。
04:00
表示一个一个数,不能表示一个数,因为这是什么呢?表示一个整数啊整数。他沿袭了,他他沿用了啊,沿用了他沿用什么呢?沿用了C的这个特点。那你如果要输出的话,你可以这么干,大家还记不记得我们官方手册,我们官方手册里面有一个。这个百分号B,如果你要你要把一个整数当二进制输出的话,你可以用百分号B来输出。啊,这个呢,我给大家演示一下。好老规矩,我们新建一个这个DEMO,好吧,我们新建一个DEMO。文件夹零八了。DEMODEMO,然后呢,零八没问题吧,然后呢,我们还是老规矩,新建一个文件面点go。好,然后呢,我从上面把它的程序的一个主体结构放到我们的面点勾里面去。
05:00
大家看一下,比方说各位同学注意听注意听,我这里有一个整数啊,同学们看。It等于多少呢?比如说等于五吧,特别简单一个出,那我按二进制输出,怎么输出呢?二进制输出的话,我可以这么输出。MT print。PF吧,啊这个格式输出,那我这就写个百分号B,然后呢把I写到这就可以了,这样的话呢,它会把这个ii现在是十进制对吧,十进制,然后呢,如果你用百分号B的话呢,它就二二进制输出了,我们来看一下。点点走回到DEMO08没问题吧,然后呢,我go run一下,到我们的命令go回车看效果,同学们,你们可以看到这个时候呢,它输出了101,这个101就是。五对应的二进制明白,那有就是说,呃,我们还有这个方法,也可以看计算器。
06:00
啊,我打开这个计算器,你们看有一个叫呃,程序员使用的计算器,比如说我先输一个五。然后呢,我点一下二进制,你看也反出101,它为什么是101呢?后面我们再讲好不好,我们后面再讲,大家先体验一下,然后呢,我们再来看。这个就是二进制的一个简单的一个使用,那嗯八进制同学们看在勾浪里面呢,十进制我就不说了,八进制是可以直接表示的。八进制可以直接表示,你比方说李宁,他改打头就行了,我举个例子。我举个例子,大家看。八进制。八进制在我们勾勒里面可以直接表示。同学们看。比如说我这里有个girl in等于零。零,然后呢?大家看到幺幺。我这样写的,大家知道这是多少吗?大家知道这是什么吗?好,我们输出一下来看一下。
07:00
Print。P啊。PRPRNT。可能F啊,就是就这样直接输出吧,咱们就直接普通这样输出。来,我们输出这个勾等于勾,我们先看看这个时候它输出什么信息跑一个。大家看到诶这有错误。Fmt写错了。再运行一下。跑起来。的效果,我们可以看到它输出是多少,是九。是九,也就是说,也就是说实际上嗯,同学们看到的011,这这个是八进制的形式啊,这个就是八进制的表示形式,它其实对应十进制的什么呢。这个011,它对应十进制的就是九,为什么是九,我们后面再说好吧,后面再一个个的说。我们再来体验一下。16进制在。
08:00
Go,那里面呢,它也可以用16进制来表示,OK,怎么表示呢?来给大家演示一下。16进制,比如说我写一个k in。我写0X。也写个幺幺,也写个幺幺,呃,注意啊,它这个X不区分大小写,也可以写成大写的X。啊,这个看你的习惯,那么我们也把它输出一下。好,然后呢,我写一个K等于。来,走一个K。那这个时候你们看它等于多少呢?这个0X11,它是16进制,其实你可以推出来,我可以告诉大家,它等于多少啊,其实就是15,其实就是呃,就是16啊,它这个就是16,那为什么是16呢?呃,其实很简单,你可以这样推一下,你看啊,我给他清一下,我写一个16进制,我写一个幺幺。第二转身十进制看,诶不对啊,刚才老师说错了,不好意思啊,是17啊是17,因为这位呢,这位刚好是十六十六加一,其实他应该是16加一推出来的,等于17啊17刚才老师说错了。
09:10
17好,我们输出一下,看看是不是等于17跑起来。我们可以看到确实是17,对不对?那问题就来了,同学们可以看到这些东西呢,会觉得很奇怪,它是怎么回事呢?它为什么这个011就是十进制的九呢?为什么0X11就是十进制的17呢?这就是我们要给大家讲解的道理了。因为你如果不是科班出身的同学,你可能看到这个东西呢,会觉得比较奇怪,对吧,等到我解释完了过后,你会觉得,哦,原来是这么回事,那同学们,我先把这段案例给同学们一并发到这里来。没问题吧,好,我先把案例放这。那么大家看这个案例呢,就应该有一些感觉。走。把案例放这儿来。OK,一个呢,我讲了一个二进制的输出。
10:00
第二个呢,我讲了一个怎么去表示在勾里面怎么去。表示一个八进制的数,表示一个16进制的数对不对?然后呢,我把笔记先放到这里来。就是。诶,把它放小一点。是吧,放小一点,这是进制,那下面呢,我们就来具体的说一下各个进制了,来跟上老师思路。跟上老师的思路,我们看一下啊,来看这儿。进制的图示,十进制特别好理解,同学们看十进制零到八。当然后面还有啊,012345678,如果这个零在16进制里面也是零,八进制里面也是零,二进制也是零,到了一,大家都是一,到了二,再看十进制的26进制也是二,八进制也是二。但是。大家看到没有,二进制变一零了,为什么呢?因为它是。它是逢二进一,你这个一再来一个一,不就进一位吗,就变成一零了,进进位这个原则还是跟十进制一样的,但是呢,它是逢二进进一,而十进制是逢十进一,仅此而已。你看这三。
11:06
她也是三。它也是你看这个地方二进制再加一个一,它这个零就变一了,看到没有444,你看这它到底幺幺再加一个一,再加一个一的话,你看一,它这加一个一进一位变零。然后再进入一位,这地方又来一个位,不是又变零了吗?最后变成这个了,你看你可以按照我们小学这个加法来算。一加一进一位先保一个零。进了一位,这个一又保一个零,到最后变一零赢了。明白好,其他我就不一个说了啊,一样的道理,一样的道理不一个说了,下面再看九。诶,你看八进制,八进制的时候九他已经一了,因为它逢八进一,你看到了十,16进制ABCDEF。到了F的时候,它已经十十五了,再加一个一,再加一个一,它就变一零。为什么呢?因为F再加一个一不能用G来表示了,它是进一位,进一位的话这个为零,在上一位就用一来表示,所以说16进制的一,零就代表16。
12:11
明白好,其他以此类推啊,八进制这些都依此类推,包括后面的,好,那么这个进制的这个示意图呢,我相信同学们应该也能看得懂,也不是特别难,你就记住它的原则什么呢?十进制、16进制、八进制、二进制分别是逢十进一、逢16进一、逢八进一、逢二进一。对不对?好,包括前面说十进制是有哪些书表示,老师都给我介绍,你只要记住这个原则就行了,那么记住这个原则过后呢,老师后面再逐一的展开讲解,我先把图示给同学们画下。二进制的图示。静置的图示说一下。来吧。那刚才呢,我们这儿有几个重要的图,我把它标在我们的笔记里面去。A。
13:00
这个图呢,还是比较有说服力的,说的比较清晰。把它放在我们的第一个笔记。好,缩小一点。对吧,然后呢,我们再把第二张图也截过来。原地吧。你就记住几个原则哈,就是逢几进一就行。然后呢,也把它放到这里来。好的。好,那关于进制,关于进制的基础知识,我们就先给同学们介绍这里,下面呢就要开始讲讲解我们进制相互的转换,在讲解近视转换的时候,就会深入的去探讨近制它是怎么算的好不好,我先截取一段小视频。
我来说两句