为什么编程语言不能是中文(计算机的汇编语言为什么没有中文的版本)
本文目录
计算机的汇编语言为什么没有中文的版本
1.编程的起源不在中国。计算机的起源在美国,编程语言优先使用了英文。 2.流通性差。英语是全世界最流行的语言,几乎成了不同语种国度之间的共同语言。 3.没有成熟的体系。电脑只能识别0和1,要用一种语言通过0和1表达人类的所有想法,设计这样一个庞大的体系会出现很多问题和困难。 4.成本高。用中文编程,只能有两种方式,一是在原有硬件基础上,将中文编程转成英文编程再转成机器语言。二是重新定义硬件,重新设计制作符合中文编程的硬件。这两种方式的成本相当高。
为什么程序员都不用中文来编程呢英语不好的人能做程序员吗
虽说我国语言博大精深,但很明显在编程这件事上,英文看起来更简洁,而且他们可以用26个字母随意拼凑。但
是我们不行,我们笔画可不能乱涂乱画,什么笔画特指什么语义的字都是规定好了的。
汉语一语双关的现象很平常,但是计算机听不懂,所以只能把话按长了说,避免语句重复。
其实现在,中文编程也有比较有名的就是两种语言了,一个是习语言,另一个是易语言。
习语言我不是很清楚是什么时候出现的,它可以类比为中文版的c语言,所有的编程过程都可以用中文来进行;
易语言的话,发展史也有十几年了,很多学易语言的都用来写外挂。
其实,限制中文编程很大原因是资料太少了,想学也没有系统的学习方法,而且毕竟起步晚。
所以,以后如果诸位成为大神了,也希望各自都能发展发展咋们的汉语编程。
网友一:
英语编程语言起步早,目前已经在全世界范围内普及,不光如此,基于c语言,java的库早已经非常完备,面对如此庞大的数据资源,国内发展十来年的易语言是打不过的。
其实有时候第一个不一定好,但他做了第一个以后,肯定会有第二个出现,但人们永远不会记住第二是谁,所以国产语言没机会呀。
其实还有语言本身的问题了,举个例子,看下面这幅图,这是国产语言的编程:
敢问一下是打汉字快还是打字母快,例如图片中的‘如果’,打拼音的话是ruguo,而且还要选则如果这个词,里面的‘是否出现事物’其拼音为‘shifouchuxianshiwu’这得有多长啊我的老天爷。
不管是谁,这一小段都回会感觉到明显清爽了许多,其实里面并没有用多少英语,知识简单的格式而已,并且不用打那么多的汉字,因此从简洁性上来讲,中华文化博大精深,汉字复杂得多,在这里吃亏了。
最后不得不说由于计算机是老外做的,软件也是老外编的,底层的很多东西都是用c写的,所以很多东西都是用英语建立了标准,没办法的事。
网友二:
作为科班出身的码农来帮你解惑吧,其实根本没有英文编程还谈什么中文编程,事实上我们都是用C语言、C++语言,JAVA语言,Python语言编程,它们都有自己的语法,用的也不是英文语法。
编程中用到的英文实际就是一些关键字(类名,函数名,变量名等),都是很简单的字符,其实跟自然语言关系不大,对机器而言最后都是0和1,跟自然语言更没关系。
编程对国人不友好的其实是好的教材、资料、说明都是英文的,阅读起来困难一些。
程序员编程、然后编译、处理器执行,这就是程序,这里面编译器还是老外写的呢,操作系统底层还是C语言。
说到底,因为C语言是人家外国人发明的,它的一套格式已经固定了。我们中国人发明了算盘,你看看它的口诀,完全是按照中文的语言环境编写的。如果换到英文,你看看能不能用啊,那肯定不能用。
网友三:
首先,编程是可以用中文的。只不过大部分的编译器都是外国人写的,国人写的编译器寥寥无几。
比如用中文编程,打印hello world,那可以把所有的英文字母,英文字符替换成中文的。同样能够用文中编程,实现打印效果。
QString tmp = str.replace("主函数", "main").replace("整数", "int").replace("。", ";").replace("开始", "{").replace("收工", "}").replace("打印", "printf").replace("返回", "return ")。
其他中文的编译器实现原理跟这个差不多,都是借助现有的语言,转译成中文。易语言就是如此,他就是基于汇编、C/C++写的。
为什么是这样的结果呢?主要原因是编译器是在特定的操作系统上集成的,而操作系统都是用英文写的,他可不认识中文。我们没有自己的操作系统,而一个操作系统是非常庞大的工程,他可是历经了几十年、几代人的心血才铸建而成的。
如果要让程序员习惯用中文编程,那么那、只能是我们自己写一套操作系统,而且这套系统必须要足够好用,足够方便,方便到我们可以不用window,不用ios。
这样至少得花上几十年、几代人的努力才行。等到那个时候,英文的操作系统可能又是另外一个世界了。
为何系统编程全都用英文而不用中文呢
人类科技的发展最伟大的成就就是编程系统的诞生,它推动着人类科技快速向前发展,在整个人类文明中,系统编程的应用可以说是无处不在,从我们的计算机系统,手机系统,车床系统,卫星系统,宇宙飞船系统等,可以说是走进了各个行业,科技的发展离不开工业化,而工业化的实现需要系统的帮助。
由此可见,一个系统编程有多么的重要了,我们现在用的手机主要有两个系统,一个是苹果系统,一个就是广泛使用的安卓系统。不管是什么样的系统,我们会发现它们都是用英文编写的,对于很多英语不怎么好的人们来说,看英文编程就像是在看天书,根本不明白说得什么。
于是有人提出了这样一个疑问:为何系统编程全都用英文而不用中文?对此我们来听听专家是怎么说的。可能有人会说,系统编程是英文不是很正常吗?中文无法进行编程,事实真是如此吗?当然不是。
人类现在所用的系统之所以用的是英文,很大的一部分原因是因为最早的编程语言是出自于西方,我们都知道,世界上科技最发达的国家是美国,而美国也是人类科技史上发展最早的国家,近代很多伟大的科学家基本都是为美国服务的。比如,爱因斯坦,特斯拉等都是为美国服务。
而世界上最早的计算机系统也是出自于美国,既然系统编程最早是出自于西方,人家自然要用自己的语言来编写了,不可能用中文。而且英文编写系统语言还有一大优势,那就是英文相对中文来说简单了很多,大部分的英语单词都只代表一个意思,可是中文却不同,每一个中文字可能都有很多个意思,在不同的场合中,它所代表的意思是不一样的,这也是为什么全世界公认的最难学的语言就是中文。
英语由于简单,所占字符少,不存在全角和半角的问题,而且在键盘输入操作的效率也比中文要高很多,所以系统编程用英文也成为了主流。事实上,中文也是可以用来编程的,比如我们知道的易语言就是中文编程语言,可惜它的发展却非常慢,还是无法跟英文编程相比。
造成这一切的原因,主要还是我国的科技起步较晚,相比于西方科技的起步时间,我国至少慢了百年左右的时候,我国在清朝的时候,人们根本不知道什么是科学,什么是科技,而这个时候的西方已经开始了工业革命,各种科学快速发展,科技也日新月异,所以当外国战船来入侵的时候,不少人把蒸气机轮船当成了怪兽,要知道那个时候我国的轮船还是采用人力和帆来推动。
科技的起步太晚,所以我国在很多方面都要落后于西方发达国家,而系统编程经过百年多的发展,早已烙印上了英文的标签,让人们一下子来接受中文编程是非常难的。中文编程无法得到推广的另一个重要原因就是中文实在是太难学了。
如果你认为英文很难学,那么对于用英文的西方人来说,学中文的难度远远超过我们学习英文。所以在未来,中文在很长一段时间还只是能够在中文的圈子里发展,让西方接受的难度非常大,除非中方编程能够表现出比英文编程更加强大的功能和应用。
为什么编程都是英文为什么中文不能编程序
编程都是英文,中文不能编程序的原因:
1、编程的起源不在中国 : 计算机的起源在美国,自然而然的优先使用了英文。而汉字太多,多音字也很多,用命令的时候会变得很慢。
2、流通性差 : 英语目前还是全世界最通用的语言(虽然现在全世界都在学中文,但还需要个周期),几乎也成为了不同语种国度之间的共同语言,那中文相对来说流通性还是要差上许多,所以程序员们在互相交流的时候会难达成共识,就无法共同进步。
3、体系不够成熟 : 尽管机器只有0和1那么简单,但要用一种语言通过0和1表达人类的所有想法,设计这样一个庞大的体系谈何容易。现在汇聚的全人类智慧发展了几十年的高级语言,依然还是存在很多问题的。
4、成本高 : 想用中文编程,只能有两种方式,一是在原有硬件基础上,将中文编程转成英文编程再转成机器语言;二是要重新定义硬件,重新设计制作符合中文编程的硬件。那这两种方式的成本是相当高的。
扩展资料
编程语言的起源和发展
第一代语言:机器语言
机器语言(machine language)是一种指令集的体系。这种指令集,称机器码(machine code),是电脑的CPU可直接解读的数据。
第二代语言: 汇编语言
汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。
在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。
第三代语言:
结构化语言、面向对象语言。
为什么没有中文写的编程语言
编程语言是一种程序员与机器沟通的工具,程序员的UI(用户接口),用于定义业务逻辑与指挥计算机工作,作为工具首先就是上手效率要高,不要因为为了打几个中文而中断思路。无论你用拼音输入法还是五笔或者是直接拼音字母,你告诉我要表达“如果”这个含义,哪个词敲键盘次数少,次数少的效率就高:“if”“ruguo”。其次,编程的瓶颈是在指令的语言吗?在如今网络时代谁还不懂几个英文,再则,计算机语言不是人类语言,它只是借用了人类语言中20-30个关键词作为基础指令,方便记忆而已,业务逻辑才是程序要考虑的,以满足最终客户需求完成任务。用“如果”或是“if”,只要约定好,计算机都会翻译成二进制,那么对于计算机它是无所谓你用什么“语言”,编译器能编译就行,而为了视觉上亲切一些,牺牲可读性、输入效率,源代码长度,以及潜在的代码安全问题,而得不偿失。当你代码量上千行后,看着满屏中文你也许会突然忘了你接下来要干什么。所以专业人员是不会考虑用中文的。编程的核心是业务逻辑,其本质是算法,其基础是初中数学,当然有高数基础最好,因为某些业务逻辑,如果有高数基础,代码量会大大降低,代码会更简洁明了。而中文还有个严重问题就是代码安全性。中文输入法中存在各种特殊字符,有些是不可显字符,有些是视觉特征不明显容易造成歧义,比如你要随时注意全角半角,因为计算机认为全角空格和半角空格是两个不同的字符。试想你本来正被程序中嵌套循环或者各种逻辑错误而烦恼,又被中文带来的字符不明确造成困惑,如果你还能坚持下去学习我是很敬佩你的。当然作为行为艺术,玩玩是没有问题的,写个小程序给小伙伴展视一下娱乐娱乐完全没问题,但正经程序员看到了会斜眼看你,当然你只是学着玩,可以考虑易语言,不过它只是VB的马甲,语言规则遵循VB的语法。
更多文章:
结束进程拒绝访问怎么解决(win8 怎么强制结束进程,在任务管理器里拒绝访问)
2024年6月25日 19:50
linux打包jar包命令(jar包启动命令(查看jar包内容命令))
2024年8月22日 02:50
python软件如何运行程序(运行python程序的两种方式)
2024年9月1日 05:15
怎么在PHP中定义和使用接口interface?php接口有什么作用
2024年7月22日 05:23
fastjson作者(fastjson 是否有注解转换属性值)
2024年7月9日 05:40
mybatis plus(mybatis-plus中可以使用if吗不在xml直接使用)
2024年6月26日 00:22
定时执行批处理文件(求做个批处理文件BAT,完成定时执行任务功能)
2024年6月30日 02:26