020-29133788
    资 讯
    您的位置:首页 >> 资 讯 >> 软件应用 >> 编程开发 >> 正文
    C 语言教学第二节

    点击:   发布日期:2013-01-20

    本文来自 www.020fix.com

    前言
    若你经过了第一节 Hello World  洗礼之后,你应该不难发现,其实电脑是一个命令一个动作。
    绝对没有心机,也没不会抗命,你叫他往东他绝对不会往西,唯一怕的,就是你不愿意亲近他。

    本节开始
    在这第二节中,要跟大家分享一个小游戏,就是十六进位转换的乐趣,驾驭十六进位乐趣无穷。
    这一点是你学习程式语言的第一个突破口,突破这一个缺口,你的程式之路将进入另一个境界。
    我不会流俗于基础教程,我不是老师,所以一定是采取突进的重要部位打击方式来与大家共享。
    这就来我们今天的课题了

    16进位简介
    0-9 这种表示方式大家都知道,但16进位却没有足够的数字来表示,人是聪明的!去借了字母,
    A,B,C,D,E,F 这六个英字母来补足,所以16进位表示就从 0-F。

    先列出这个 转码表

    十六进位 -> 十进位  -> 二进位


    0 = 0 = 0000
    1 = 1 = 0001
    2 = 2 = 0010
    3 = 3 = 0011
    4 = 4 = 0100
    5 = 5 = 0101
    6 = 6 = 0110
    7 = 7 = 0111
    8 = 8 = 1000
    9 = 9 = 1001
    A =10 = 1010
    B =11 = 1011
    C =12 = 1100
    D =13 = 1101
    E =14 = 1110
    F =15 = 1111


    眼尖的朋友可能发现了,其中有个好玩的现象,也可能发现了这个突破口的存在,发现了这乐趣。
    如果你还是看不出任何端倪,那也没有关係,就仔细的多看三遍,让这个对照表坎入到你的脑中。
    只要你身处安全的状况下,就想想这个转码表的变化,越想你的嘴角就会越往上扬起,最后大笑!

    如同前面所说这是一个突破口,也将造就你非凡程式之路的一把金钥,若你仍然是不知其中奥妙,
    那就采用我现在告诉你的方式【将他背起来】

    许许多多的入门书本都会将他作详尽的换算说明,事实上!根本不用去算,它就犹如九九乘法表,
    不论你有多么的不愿意,我强烈要求你必须将它化为己有,把它成为你脑中的细胞基因的一部分。

    电脑中最小的保存单位是BYTE,我们叫它『位元组』,它是由 8个 bit组成,你可能会有个疑问?
    bit 是什么呢?它就是我们称的『位元』,那么他的用意为何呢?其实说穿了,也就是一个单位。
    电脑唯一认识的单位,就是 bit,除此之外都是给人看的,电脑根本看不懂,它就是这么的死板。

    你应该听说过 8位元电脑,16位元电脑,32位元电脑,这些用语应该不会陌生吧?是单位的象徵。
    有如 1元 5元 10元, 元就是一个单位的象徵,记住了这个,不用过于在刻意的鑽这方面的牛角!

    其实电脑很难沟通,因为它只懂 0 与 1 ,这样的情况下,人类实在很难与它好好进行沟通交流。
    有如 0011101010101001011111 这一串数字你知道他是在做什么吗?哈哈哈~,其实我也不知道,

    用这样的你方式来进行保存与识别根本就是在挑战人类本能的极限,人总是会利用各种方式偷懒。
    于是定义出各种『单位』来进行保存,已增进方便性与可读性,你强烈好奇心可能已经开始鼓动。
    既然要方便,使用最贴切的10进位不就好了吗?为何贴那张对照表?还大言不惭说那是个突破口?

    这样来说,你方便,电脑并不觉得方便,因为它只懂 0 与 1 你现在可以随便想一个10进位数值,
    然后利用对照表将它变换为二进位看看?然后再想一个16进位,用对照表将它变换为二进位看看。
    发现什么端倪了吗?我相信你已经开始嘴角往上扬了。

    没错16进位实在拥有奇妙不可言语的与电脑可以进行好好的沟通,对于人们来说,它也不会困难。
    请你先下压你的嘴角,我们来好好的研究一下 BYTE 这个电脑最小存放单位他的妙用之处再哪里。

    BYTE = 8 bit = 0000 0000 (二进位空间)  他的最大容量 = 1111 1111 (快!利用对照表)
    是的你已经进入状况了,有如使用九九乘法愉快吧。

    你应该已经发现了这个突破口,相信往后我们仍会继续合作的把这个电脑语言游戏,推向最高峰。
    不用换算,将该表熟练,往后无往不利。

    如何转10进位呢?事实上也是一样

    BYTE最大容量 = FF = 1111 1111 = (16x16-1) = 255 (因为 zero base 0 开始起算)
    这方面就由自己融会贯通了,因为我也很死板,只想多说说16进位和 2 进位,嘿嘿嘿嘿~


    你或许会觉得,这一节跟  C 语言有什么关係?非常好!有好奇心乃是学习程式语言的最大动力,
    不过这个问题,我永远不会告诉你,就让你自己去追求吧!不要扁嘴,因为我还是不会告诉你的。

    小弟有个自信,保证你今晚绝对带着嘴角微翘进入梦乡,这是第一个突破口,未来有许多的门槛。
    若你愿意让小弟继续与你同行,就请给个掌声,掌声不是给我,而是给你快乐继续往下的原动力,

    我仍然一样保持第一节所言

    ** 慢慢与你一起进入『好玩』的 C 世界 **

    最后祝你学习愉快,把 C 当游戏来玩,你会越玩越高兴。