首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

程序员的情商:二进制电脑能识别,十进制人易懂,十六进制能做啥

程序员的情商:二进制电脑能识别,十进制人易懂,十六进制能做啥?

假如你有一个程序员的女朋友,突然给你发了一串数据(68656c6c6f 62616279),你知道什么意思吗?该怎么回她呢?每天除了写代码,就是在学习写代码的路上。程序员的智商即使不高,应该也算合格的吧,要不然怎么能与冰冷的机器交流呢。至于程序员的情商,那就有待考量了,敬请期待。

女程序员

程序员

今天,聊一下这个轻松的话题。计算机专业的同学,在学习编程中,尤其是初学者,经常有这样的疑问,一般人只认识十进制(520),电脑只能识别二进制(1000001001),那十六进制(208)能做什么的?为什么还要在中间加上一个十六进制呢,是不是多此一举吗?本来初学编程,对二进制就不熟悉,要花不少时间和理解来学习理解,在学个十六进制不是很多余吗?十六进制在执行存储都要转换为二进制,十进制同样是转换为二进制,那不是无缘无故多了流程出来吗。

标准ASCII 码

二进制

每天我们都在使用计算机,每天都可以听到关于人工智能,机器深度学习的新闻报道,总感觉人工智能就要来领导人类历史进程。其实,回过头才发现,我们神奇的电脑还是那么幼稚,就像三岁的小孩,只是认准一样东西,如果换成别的,就坐地打滚了。计算机在存储信息,传输信息以及操作数据,都是面向二进制的,二进制就是机器语言,并且只认准机器语言,其他的直接无视。所以,不管什么样的语言,哪种编程语言都一样,在存储执行过程中必须是二进制,输出来时,就再次转换成人的语言。因为人类也是死心眼的,怎么学也学不懂机器语言。一般8位二进制表示一个英文字符。

标准ASCII 码

十六进制

十进制就不说了,上幼儿园的说话,掰着手指头数的就是十进制,只有0~9.所表示的数也都是在熟悉不够了。不过,要注意一点,存粹的数字是没有意义的,必须在特定的语境中才有意义。单是数字3什么,有歧义,可以是3个汉字,也可以是3个人,3头牛,所以,数字要准确表达其意思是跟语境有关联的。同样的,二进制,十六进制也是只是数字,其代表的含义也是在特定的执行环境中才能被确定的。那十六进制存在的意义是什么呢?它就是为了平衡计算机与人类思维的矛盾,起到了一个过渡的作用。十六进制相对与二进制,对于人类来说还是比较好理解记忆的,而对于计算机而言,同样便于计算转换,没有十进制那么繁琐,提高了计算机的数据处理性能。简直是完美。

我的世界你不懂

标准ASCII 码,是当年美国为了规范文本数据交换,制定了字符转换规则,使用7位二进制表示已些常用的打印字符和控制符如大小字母,0到9的数字,标点符号。这些字符都是使用7 个二进位对字符进行编码的。标准ASCII 码的出现,是影响很大的,他实现了不同计算机硬件与不同系统软件间的标准化数据传输。开头的数据串就是十六进制(68656c6c6f 62616279),对应的文本就是hello baby。冰冷的数字,瞬间,感动了自己吧!

根据标准ASCII 码,用十六进制写出你名字的拼音吧,感受一下程序员的浪漫情怀!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180323A1VZB900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券