计算机识别人类的语音要靠编译器,编译器是怎么做的呢?

来源:互联网
责任编辑:李佳
字体:

计算机识别人类的语音要靠编译器,编译器是怎么做的呢?几十年前刚开始做编译器的时候,是不是靠程序员0和1这两个数字不停的敲出来的啊?

由用户大学生编程指南提供的知识:

谢谢邀请,

这个题目要讲的深刻点,还真能讨论白天,还涉及到软件开发的发展历程。无论是文字还是视频或者再或者语音最终都会转化成二进制的格式,这都是冯诺依曼计算机体系结构。

编译器只是把这些逻辑代码编译成计算机能识别的二进制文件,最初的计算机的编程几乎就是最原始的0101的组合而作,随着大家的努力从汇编,再到C语言,再到现在的C++编程语言,加上现在大行其道的java,以及争议最大的编程语言php,开发软件越来越通俗化,以至于很多人做了很多年都不知道底层语言是如何工作的,分工也精细了。

最近很多人说到底层语言过时了之类的语言,特别是对于C语言,现在操作系统的底层语言实现大部分都是C语言,底层驱动,通讯类的编程基本上都有其影子。

只不过经过多年的发展,底层很多的东西已经成型,相对来说工作机会就少了许多。但是并不代表没有公司需要了,工作的要求相对高了一些。造成了一种底层语言找不到工作的假象,这点在公司招聘员工的时候体现出来了,找web后台开发的一大批投简历的,但是招嵌入式的几乎找不到,大家都忙着培训速成品了。

觉得不错就点个赞

由用户一个有情怀的码农提供的知识:

谢邀!

一、首先回答下题主的问题

程序员绝对不会亲自动手去写0101的这种二进制,哪怕是几十年前。编程语言有机器语言,低级语言和高级语言之分,任何编程语言都会通过相对应的编译机制和解释机制,最终转换成机器能识别的字节码文件,也就是二进制文件(0101…)。

二、语音识别

  1. 语音识别技术所涉及的领域包括:信号处理、模式识别、概率论和信息论、发声机理和听觉机理、人工智能等等。

  2. 语音识别方法主要是模式匹配法。 在训练阶段,用户将词汇表中的每一词依次说一遍,并且将其特征矢量作为模板存入模板库。 在识别阶段,将输入语音的特征矢量依次与模板库中的每个模板进行相似度比较,将相似度最高者作为识别结果输出。

  3. 语音识别的过程就是模电转换的过程。机器中的声音模块接收外界语音,通过一系列前端处理,比如对原始语音进行降噪和源音增强处理转换成电信号,后端对电信号进行一系列的处理、编译和解释,最终得到机器识别环境能识别的信息。当然这个过程是非常复杂的,无论如何编译、解释、识别对于任何语言或操作来讲,其实本身是一种机器和外在事物信息交互的约定,就像汉语、英语等,不同的语言,不同的文字,不同的意思,这事先都进行了约定,双方通过这种约定最终达到交流的目的。

以上仅仅是对题主的问题做一个简单的解答和说明,具体工作原理和过程都是相当抽象和复杂的,如果涉足相关领域可以再做深度研究。希望以上能给予一些帮助。

【无情怀,不编码。做一个有情怀的码农,虽千万人,吾往矣!】

重点关注java自学、java技术、求职,为你导航领路,指点迷津,分享学习感受和技能经验。欢迎点赞、转发、关注和留言,任何java自学或求职问题可以留言私信

由用户Python雁横提供的知识:

首先,感谢邀请。

人类的语音,应该说的是编程语言吧。

先解决说明中的小问题,几十年前,最开始的程序员就是靠0和1“敲”出来,这就是所谓的机器语言(还是人造的),因为硬件简单,所以只有0和1。

每台机器对应着一组指令集,程序员编写程序需要记住这些指令集,并且记住每个工作单元的状态,非常复杂。

后来发明了汇编语言,这个和机器语言和接近,相对来说还是容易编写。

比较有标志性的是,c语言的诞生,面向过程的思想,随后的编程语言,都深受其影响。

说偏了,下面讲一下编译器的原理。

第一步,进行语法分析,一段代码,计算机看到的可能就是一个个字符,计算机需要进行标记,为之后的工作做准备。

第二步,语法分析,通过对之前的标记,我们进一步分析里面的语法,再一步简化

第三步,语义分析,其实可以理解为进一步的语法分析,这一步是将之前不易分析出来的部分,进行进一步分析,进一步解释(标记)。

第四步,优化代码,如无用的代码,计算的结果,注释等等,这些东西有的已经在前面进行优化了,这根据编译器的选择有关。

第五步,生成目标代码。

其实,编译器的核心就是算法的设计,只是这个算法非常非常复杂。

我的回答,各位如果觉得还看得过去,动动手指,点个赞!

由用户菜鸟01号提供的知识:

谢谢悟空小秘书的邀请

题主你猜的不错,第一个编译器就是人工纯手工编写的

有一种编译方法叫迭代法,将一个程序分成很多份,然后让第一份写出的编译器编译第二份,以此类推,编译完所有。人工只需要编译第一份编译器,这样就大大降低了工作量。

举个栗子

c语言程序语言gcc编译才能运行,而gcc本身又是c语言写出来的,那gcc是怎么编译出来的呢?就像先有鸡还是先有蛋的问题。

答案是gcc又由其它语言编译器编译的,一般是汇编语言,那汇编语言是用啥编译的呢?总有一个最初的编译器存在。学过汇编语言的人都知道,汇编语言每一个指令都对应着一个二进制码,在计算机早期,人们都是在纸条上写完程序,然后对照编码表,一步步编译成机器语言的。所以,人的大脑就是最初的那个编译器,只不过速度有点慢而已。

有了机器码,发明了汇编,一切都好办了,最难的就是如何跨出那第一步。

请注意:本内容来自悟空问答,版权归悟空问答所有,本网旨在传播知识,不代表本网赞同以上意见,如有任何问题请与本网联系!

根据您访问的内容,您可能还对以下内容感兴趣,希望对您有帮助:

常见的C语言编译器是什么?

答:用VC6.0, SmartNCode这些IDE的编译器

C语音中各类型数据所占的字节数(tc2.0编译器)

答:sizeof(char) == 1;sizeof(short) == 2;sizeof(int) == 2;sizeof(long) == 4;sizeof(float) == 4;sizeof(long long) == 4;sizeof(double) == 8;sizeof(long double) == 10;以上为 Win-TC 真实测试结果。


www.xue163.net true http://www.xue163.net/zixun/33/334277.html report 29262 计算机识别人类的语音要靠编译器,编译器是怎么做的呢?,计算机识别人类的语音要靠编译器,编译器是怎么做的呢?几十年前刚开始做编译器的时候,是不是靠程序员0和1这两个数字不停的敲出来的啊?由用户大学生编程指南提供的知识:谢谢邀请,这个题目要讲的深刻点,还真能讨论白天,还涉及到软件开发的发展历程。无论是文字还...
最新添加资讯
24小时热门资讯
娱乐时尚
科技资讯
历史文化
真视界
旅游美食
精彩图文
我爱我车
母婴健康
关于本站 | 广告服务 | 手机版 | 商务合作 | 免责申明 | 招聘信息 | 联系我们
Copyright © 2004-2018 xue163.net All Rights Reserved. 学网 版权所有
京ICP备10044368号-1 京公网安备11010802011102号
教育考试: 学历财经建筑 医药公考资格外语电脑作文招聘中小学留学 文档 移民 文库专栏23问答中心z资讯z资讯1资讯涨资讯涨资讯1资讯问答图书馆知识IT编程数码信息解决方案信息中心IT科技topzttophottopsctopnew问答新闻中心软件教室设计大全网络相关英语学习开发编程考试中心参考范文管理文库营销中心站长之家IT信息中心商学院数码大全硬件DIY企业服务网吧在线百科硬件知识手机平板汽车游戏家电精彩摄影现代家居IT女人经验健康养生猎奇创业攻略教育学习历史时尚潮流最近更新涨知识