点击上方蓝字关注我,了解更多咨询

一、什么是语言,什么是C语言,有什么区别与联系?

一提到语言这个词,人们自然想到的是像英语、汉语等这样的自然语言,因为它是人和人相互交流信息不可缺少的工具。大家听到我们之间交流的就是汉语,英语。比如一些单词是英语,主要还是用汉语在交流。

而今天,计算机遍布了我们生活的每一个角落,除了人和人之间的相互交流之外,我们必须和计算机交流。用什么样的方式和计算机做最直接的交流呢?人们自然想到的是最古老也最方便的方式——语言

二、语言与C语言的区别联系

三、计算机结构组成

  • 其中蓝色箭头表示:数据流

  • 红色箭头表示:地址

  • 黑色箭头表示:控制流

四、计算机系统的组成

五、程序与指令

指令是对计算机进行程序控制的最小单位

所有的指令的集合称为计算机的指令系统

程序是为了完成意向特定任务而用某种语言编写的一组指令序列

六、机器语言与指令

计算机是一个忠实的仆人,时刻等候着主人的命令。如何才能使计算机听话呢?当然是用计算机听得懂的语言去命令它了。计算机的大脑或者说心脏就是CPU,它控制着整个计算机的运作。每种CPU,都有自己的指令系统。这个指令系统,就是该CPU的机器语言。机器语言是一组由0和1系列组成的指令码,这些指令码,是CPU制作厂商规定出来的,然后发布出来,请程序员遵守。比如下面是某CPU指令系统中的两条指令:

1000000 加 1001000 减

要让计算机干活,就得用这样的语言去命令它。这样的命令,不是一条两条,而是上百条。而且不同型号的计算机其机器语言是不相通的,按照一种计算机的机器指令编制的程序,不能在另一种计算机上执行。

七、编译器的概念

机器语言编程是不是很令人烦恼呢,终于出现了汇编语言,就是一些标识符取代0与1。一门人类可以比较轻松认识的编程语言。只是这门语言计算机并不认识,所以人类还不能用这门语言命令计算机做事情。如同上文提到过的中国人和美国人交流一样,如何才能让中国人说的话美国人明白呢?

聪明的同学一定想到了:翻译!是,一个既懂汉语又懂英语的人,不就可以将中文翻译给美国人听么?

所以,有一类专门的程序,既认识机器语言,又认识汇编语言,也就是编译器,将标识符换成0与1,知道怎么把汇编语言翻译成机器语言。于是,人类和机器间的交流,终于又畅通了,而且人类可以比较轻松的编写程序了。也就是编译器,将标识符换成0与1.

八、语言的出现

汇编语言和机器语言都是面向机器的,机器不同,语言也不同。既然有办法让汇编语言翻译成机器语言,难道就不能把其他更人性化的语言翻译成机器语言?1954年,Fortran语言出现了,其后相继出现了其他的类似语言。这批语言,使程序员摆脱了计算机硬件的限制,把主要精力放在了程序设计上,不再关注低层的计算机硬件。这类语言,称为高级语言。同样的,高级语言要被计算机执行,也需要一个翻译程序将其翻译成机器语言,这就是编译程序,简称编译器。

这类高级语言解决问题的方法是分析出解决问题所需要的步骤,把程序看作是数据被加工的过程。基于这类方法的程序设计语言成为面向过程的语言。C语言就是这种面向过程的程序设计语言。

九、语言的层次划分

十、主流语言进化史

END

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

戳“阅读原文”我们一起进步

如何正确认识C语言在当今编程领域的地位相关推荐

  1. brendan eich_编程领域的变革者:Brendan Eich

    brendan eich 编程领域的变革者 :这个新博客系列将关注那些已经和/或继续对技术界和编程界产生积极影响的组织,协会和人员! 在第二篇文章中,我们将了解JavaScript的发明者. 这就是B ...

  2. 基于计算机程序设计语音,基于php语言分析计算机编程的发展前景.doc

    文档介绍: 基于php语言分析计算机编程的发展前景.docEvaluationWarning:ThedocumentwascreatedwithSpire..基于php语言分析计算机编程的发展前景吕昌 ...

  3. 编写书籍《C语言嵌入式系统编程修炼之道》序言

    序言        目前,嵌入式系统已经无处不在,遍布于世界的每一个角落.智能家电.手机.PDA.汽车.通信电台等几乎所有的电力.电器与电子产品都包含一个或多个嵌入式系统.有人的地方就有江湖,有电的地 ...

  4. 计算机领域的范式,编程领域的范式转移

    范式转移(Paradigm shift),这个名词最早出现于美国科学哲学家托马斯·库恩的代表作之一<科学革命的结构>.库恩认为范式是指特定的科学共同体从事某一类科学活动所必须遵循的公认的模 ...

  5. C语言嵌入式系统编程修炼之道——背景篇

    C语言嵌入式系统编程修炼之道--背景篇 作者:宋宝华  e-mail:[email]21cnbao@21cn.com[/email] 不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上,势 ...

  6. 编程入门python java和c语言_学习编程适不适合从Python入门?哪种语言更适合入门?...

    本文对比了C语言和Python语言,分析它们作为编程入门语言各自的利弊,并给出了我推荐的编程学习道路. 我本身已经入门了Python脚本语言,在进阶C语言和JAVA语言后,Python重学就轻松很多, ...

  7. c语言编写计算机软件,基于C语言的计算机软件编程分析.doc

    基于C语言的计算机软件编程分析.doc 基于C语言的计算机软件编程分析 摘要:C语言是一种重要的编程语言,在当今IT业的运用十分广泛.使用C语言来编写的程序简单.直接.准确,极大地推动了计算机软件的更 ...

  8. 计算机编程领域最伟大的20个发明

    概述:本文收集整理了计算机编程领域的二十个突破历史的发明. 1 第一台计算机:"差分机"(1821年) "差分机"是1821年由英国政府委托科学家巴贝奇设计而成 ...

  9. C语言/C++对编程学习的重要性!

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

最新文章

  1. 基于系统科学理论的认知科学研究进展
  2. 解题:POI 2004 String
  3. php arcode svg,在react中使用svg的各种方法总结(附代码)
  4. 导入BaiduMapSdkDemo报230错误解决思路
  5. IDE 插件新版本发布,总有一个功能帮到你——开发部署提速 8 倍
  6. 腾讯视频怎么打开个人直播后台播放功能
  7. python 文件指针及文件覆盖
  8. Covariance and Contravariance in C#, Part One
  9. 关于网站备案的44个问题
  10. 点个外卖时间,我把「软中断」搞懂了
  11. 蓝桥杯 ALGO-30算法训练 入学考试(01背包,动态规划)
  12. 写录音机时遇到点问题
  13. 华为新机Mate30参数解析,这些参数你都知道是什么意思吗?
  14. html 提示框 js,JavaScript实现短暂提示框功能
  15. sed解析url的域名
  16. 绿盟于旸:让阿里安娜火箭爆炸的缓冲区溢出 linkboy语录:tk出品必是精品呵呵...
  17. vite 不支持 ie 11?configureBuild Hook 帮你定制 bundle 打包过程
  18. 关于鼠标右键的快捷键
  19. html5水墨背景,好看的水墨画背景图片
  20. 第一讲: ADS简介和ADS设计环境

热门文章

  1. AWS上的应用程序自动扩展–选项及其对性能的影响
  2. 在等待Jakarta EE时
  3. jooq代码生成_将jOOQ与Spring结合使用:代码生成
  4. jms spring_JMS和Spring:有时很重要的小事情
  5. 您的JAX-RS API并非天生就等于:使用动态功能
  6. 将Java 8流解析为SQL
  7. adf435编程_动态ADF列车:以编程方式添加列车停靠点
  8. 人员雇佣 网络流_雇用Java EE开发人员的一些面试问题
  9. 单页应用程序的Spring Boot静态Web资源处理
  10. 使用Flyway在Java EE中进行数据库迁移