java 8进制串转中文_为什么不能用中文进行编程?而英文就可以

前些天大雄无意间听见

几个线下班小伙伴说

真的是无(te)意(di)的

“我要补英文”

“对,英文真的很重要”

“如果编码用中文就好了”

...

听见这大雄就不淡定了

中文代码

小伙伴确定能够搞懂??

6f4ec01a46e4f386476217eb803d0778.png

首先我们大概的看一下中文编码:

98252149a9d1e44ec97df02b5df71065.png

你以为会写中文

写编程就简单了吗?

这就像你以为会写汉字

就会写出好文章一样

编程是和机器沟通

因此要用机器的语言而不是人类的语言

68a08975161ecf83b3b10724c76c405c.png

最早的程序就是0和1的数字

不是中文也不是英文

以前的程序员

每天写程序就是

在一条长长的纸带上打孔表示0和1

后来发现0和1的二进制太麻烦了

就把0和1压缩一下

用16进制表示

比如数字10

用二进制表示是1010

用16进制表示就是0A

这样表达起来就更简洁

但是输入电脑后

仍然要转换为二进制电脑才能明白

208f0984048a5a89cc7e342ae0dd859a.png

后来

科学家们用简单的英文单词

表示某些功能

比如加法

就用add表示

减法就用dec表示

程序员输入add或dec后

系统会转换为对应的算法

就这样不断的

给不同的代码段起名字

编程语言就是

从数字编码不断压缩提高层次

最后形成了当今的各种风格的编程语言

为什么码农会讨厌中文编程?

用最流行的易语言说明

8729f92e5f057a64fa79e4be00c9372c.png

所谓全中文的易语言

就是把Visual Basic语言中

每个英文单词

换成了对应的中文词

其他都不变

比如Visual Basic的代码是这样:

if True thenPrint "OK" endif

换成了易言语,就是这样了:

如果 真 那么打印 "OK" 结束如果

任何人都能看出来

英文写的程序更简单清晰

a5a5a7d6cb2afe6682dc58adc7fd9d48.png

从语言学的角度来说

英文是线性的一维语言

中文是平面的二维语言

而程序恰恰是线性的一维的

也就是说

线性的英文正好能契合线性的程序

所以

中文并不适合现有的编程方式

未来的发展可能超出你的想象

未来可能会有多维度的量子计算

也许二维的中文

会比一维的英文更适合

1ee693e539b9296dc87c63c6b163406f.png

程序员对比

中文编程和英文编程就会明白

中文编程反而会提高门槛

因为编程的核心

不是什么语言

而是程序化思维方式

最简单的并不是英文编程

而是数学符号编程

极度抽象

普通人很难理解

但代码量特别少

83a1aa44e9a9cbc84bf72913df96d98d.png

补充一句

其实现代的语言比如Java

都支持Unicode

也就是说可以用中文

甚至世界其他语言做变量名和函数名

小伙伴可以试试看

这样看起来就基本上就相当于是中文编程了

对比一下英文编程

就会知道哪个更好了

ce64a6b5ab6c7a57fc7eb41132108790.png

电脑能识别的只是0和1的二进制而已

如果按中文的角度来考虑

那么应该从核心开始

把二进制转换为8进制

然后用八卦来表示

这样从底层构造纯中文的计算机

八卦两两组合

演化为64卦

就能表达宇宙万物

07a80a3923bfc059e52e7b21377dac9f.png

这比外国人的英文编程语言

不知道高级多少倍

而且满眼全是中文

外国人就算认识中文字

也看不懂意思

哈哈

以后如果中文编程火了

请记得

在某个夜晚

你和某只雄的深夜畅谈。

需要更多学习笔记干货的小伙伴、欢迎关注公众号【老九学堂】(づ ̄3 ̄)づ╭❤~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557320.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java 父子类方法调用顺序

概述 在 Java 的多态中,有个结论可以直接引用: 对象类型看左边静态方法和成员变量看左边成员方法,编译看左边,运行看右边(子类可能重写)如果有多个匹配的方法可以调用,优先调用参数最匹配的一个 调用顺序…

TCP/IP,HTTP,Socket的区别与联系

TCP/IP,HTTP,Socket的区别与联系 网络七层:物数网传会表应.分别为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层.其中,底层三层:物理层,数据链路层,网络层是网络工程师研究的对象,而其它四层,是用户面向和关心的问题. http协议:超文本传输协议, 对应于应用层. tcp协议…

MATLAB学习笔记(一)求解三阶微分方程

一、求解三阶微分方程 对于多变量三阶微分方程求解问题,这里介绍一种求解方法。 例题如下: 对于以上方程,给定边界条件,,,,,。求解和的表达式。 二、解题步骤 (1&…

Docker exec 命令执行出错, 显示 the input device is not aTTY 的解决办法

问题描述 在使用 docker exec 命令进入容器时,发现报错信息如下: the input device is not a TTY. If you are using mintty, try prefixing the command with winpty解决办法 这是因为命令行权限不足导致的,解决办法就是提升权限 Windo…

JAVA 判断Socket 远程端是否断开连接

JAVA 判断Socket 远程端是否断开连接 最近在做项目的时候,遇到这样一个问题,如何判断 Socket 远程端连接是否关闭,如果关闭的话,就要重建连接Socket的类提供了一些已经封装好的方法, 如 isClosed()、isConnected()、i…

axure 内部框架内容下滑_Axure教程:转盘抽奖交互原型

本文跟大家分享,如何使用axure制作转盘抽奖交互原型,不带登录流程。效果如下:抽奖流程一、主要内容(1)主要元件:动态面板(2)重点:旋转交互、随机函数、触发动作。(3)难点:通过停止位置判断抽奖结果(4)涉及函…

java.lang.relect.Array 类

概述 这是一个位于 java.lang.reflect 包下的类,类中的方法都是静态方法,主要的功能就是更方便地创建数组。在数组元素类型未知时,简化了操作数组的代码。 使用示例 //创建一个长度为 5 的整形数组 //等价于 int[] array new int[4]; int…

日志打印的8种级别(很详细)

日志打印的8种级别(很详细) 日志的输出都是分级别的,不同的设置不同的场合打印不同的日志。下面拿最普遍用的Log4j日志框架来做个日志级别的说明,其他大同小异。 Log4j的级别类org.apache.log4j.Level里面定义了日志级别&#x…

python格式字符_python格式字符

用python实现接口测试(八、实现序列化与反序列化)前言在python中,序列化可以理解为:把python的对象编码转换为json格式的字符串,反序列化可以理解为:把json格式字符串解码为python数据对象。一、字典,通过json把它序列…

CountDownLatch 介绍与举例实现

文章目录概述主要方法举例实现概述 CountDownLatch 是 JUC 包下的一个重要的并发工具,它是一个线程协同作业的工具,使某些线程一直处于等待状态,直到另外的线程完成任务后再执行。 主要方法 CountDownLatch 主要靠内部的一个计数器来实现同…

identity_insert 如何改为on_十分钟教你如何快速提高Laya构建速度,还不快来康康?...

前言如何快速提高Laya构建速度 微信小游戏推出之后,很多公司也相应的进入到微信小游戏这个领域,现在市场上的游戏开发引擎,如Cocos、Egret、Laya都对小游戏有了很好的兼容性。而在实际开发中,如何提高Laya的构建速度,是…

mysql数据库中数据类型的长度

mysql数据库中数据类型的长度 在mysql中新建数据表的时候会有长度一说,其实用建表语句建数据表的时候也有涉及 例如: CREATE TABLE user( uid int(4), name varchar(255), passward varchar(20) birthday data ) 不知道你有没有注意这个数据类型…

Iterator 和 ListIterator 的区别

概述 Iterator 和 ListIterator 都是迭代器,都可以用来遍历 List,ListIterator 还继承自 Iterator。 区别 Iterator 只能用于顺序遍历,且只能删除元素ListIterator 可以顺序或者反序遍历ListIterator 可以增加(add(E e) 方法&a…

二下语文书电子课本_小学生语文成绩好,不是靠补课,把课本吃透,才是高效学习方法...

关注语文教学发展,解决语文学习困惑。对于基础差、语文学习能力差的同学,我不建议去补课。但是家长说,不补课怎么办呢?我们也没有时间和耐心去给孩子辅导,又怕讲错了,还是让老师讲好。尽管家长们有这个意识…

Java面试——MyBatis系列总结

文章目录: 1.MyBatis是什么? 2.JDBC编程有哪些缺陷?MyBatis又是如何改进的? 3.MyBatis与Hibernate的区别在哪? 4.MyBatis的优缺点 5.请说说MyBatis的工作原理 6.MyBatis的架构设计是怎样的? 7.#{}和…

包装类型与基本类型的装箱与拆箱操作

文章目录概述Boolean 与 booleanCharacter 与 charByte 与 byteShort 与 shortInteger 与 intFloat 与 floatDouble 与 doubleLong 与 long总结概述 基本类型与包装类型,存在相互转化的关系。 基本类型转为包装类型这个过程,被称之为装箱包装类型转为基…

机器人炒饭小块头一一_小块头机器人炒饭:全智能流程,炒饭芬芳独具

在我的生活里,没有什么不开心的事情是一顿炒饭解决不了的,实在不行就两顿。把前一天剩出来的隔夜饭放到锅里和家里的食材进行组合、翻炒,就可以千变万化,方便好吃又管饱。小块头茶油炒饭,是一份易拉罐材质独立包装的炒…

Java面试——Spring系列总结

文章目录: 1.什么是Spring? 2.Spring由哪些模块组成? 3.Spring中都用到了哪些设计模式? 4.什么是Spring IOC容器?有什么作用? 5.Spring IoC的实现机制 6.BeanFactory 和 ApplicationContext有什么区别…

gateway 过滤器执行顺序_spring boot gateway 过滤器的执行顺序

前言学习官方文档,发现对于过滤器有分为三类默认过滤器自定义过滤全局过滤器于是就有一个疑问,关于这些过滤器的访问顺序是怎样的,今天就以一个demo来进行测试准备阶段过滤器工厂类以此为模板,复制出几份就可以了,注意…

Java 线程状态流转

Java 线程一共有 6 种状态: NEW:新建状态,当一个线程被创建完成,还没有调用 start() 方法时,是这种状态。RUNNABLE:可运行状态,当一个线程正在正常地执行 run() 中的代码时,是这种状…