C语言_学习笔记_(一)程序设计与C语言

计算机和人脑完全不一样,计算机有自己的思维方式和行为习惯。所以有的事情人类很容易就做到了,计算机可能会很困难;而有的事情人类不擅长或者不乐意做,计算机却可能会很容易实现。学习编程就需要了解计算机做事情的方式方法,学会用计算机的方式来想问题,这就叫做计算思维

通过学习程序设计,我们能了解计算机是怎么工作的,计算机擅长什么样的工作。计算机只会一件事:你要它一步一步怎么做,它就会一步一步做,但却不知道怎样将这一步一步串连在一起,所以:

对于人来说,你要告诉他“What to do”
对于计算机来说,你要告诉它**“How to do”**

程序是用特殊的编程语言写出来表达如何解决问题。编程语言不是用来和计算机交谈,而是描述它如何做事情的过程和方法。

我们要让计算机做计算,就需要找出计算的步骤,然后用编程语言写出来。计算机做的所有事情都叫做计算,并不仅仅指加减乘除。而计算的步骤就是算法

Q1:计算机里的CPU可以直接运行人类编写的程序吗?为什么说编程语言不是和计算机交谈的语言?
计算机CPU不可以直接运行人类编写的程序。人类编写的程序语言属于高级语言,而计算机能识别的是机器语言。人类所理解和编写的语言需要通过编译器将高级语言转化为机器语言才能被计算机识别。

程序的执行分为两种:
解释:借助一个程序,那个程序能试图理解你的程序,然后按照你的要求执行
编译:借助一个程序,就像一个翻译,把你的程序翻译成计算机真正能懂的语言——机器语言——写的程序,然后这个机器语言写的程序就能直接执行了。

解释语言VS编译语言
语言本身没有解释/编译之分,只是每一种语言都有一种常用的方式,例如C语言常用编译的方式,Python常用解释的方式。
解释型语言有特殊的计算能力。编译型语言有确定的运算性能。由于目前计算机的计算速度已经到达非常高的层次,两种方式的运行效率差异不大。

Q2:有的编程语言,源代码经过编译后形成目标代码,但是这样的目标代码不能直接在CPU上执行,而是需要由一个仿真器程序来解释执行。这样的执行方式是编译的还是解释的?
语言本身没有解释/编译之分,我们不能说它是编译型语言或者解释型语言,只是编译或者解释是我们常用的方式。如Java是需要编译的,但是没有直接编译成机器语言,而是编译成字节码,然后在Java虚拟机上用解释的方式执行字节码,Python也是使用了类似的方式。

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值