欢迎来到天天文库
浏览记录
ID:32371006
大小:54.55 KB
页数:9页
时间:2019-02-03
《从零开始学编程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、从零开始学编程一、编程基础1、计算机基础计算机核心是处理器,处理器是个拨一下转一下的电子设备。拨就是时钟信号驱动(晶振在供电条件下产生周期震荡的电脉冲即时钟),转是指内部状态变化。这个状态变化会触发外围设备的进一步变化。在人为的设计下,就呈现出不同的对外表现和功能。2、处理器的功能处理器的由指令寄存器和数据寄存器组成。指令寄存器中存的是指令,来个时钟触发,数据寄存器的状态就会根据指令不同而转变为不同的新状态。旧状态就是原数据,新状态就是处理结果。给外界的感觉就是处理器根据指令指示对原数据做处理,得到了运算结果.如指令为“加”原数据
2、寄存器1的状态为数字“3”的表示,数据寄存器2的状态为数字“5”的表示,来个时钟后,原数据寄存器1的状态变为数字“8”的表示。从效果上看:等效处理器执行了一次3+5=8的运算。除了运算功能,处理器的指令需要依次更新为下一条指令,数据寄存器的状态需要能够存储才有意义。这些就是从内存或闪存(U盘用的存储芯片)中取指令,运算数据从内存中取再存到内存中。内存中的数据可以被处理器改变,这种改变又会引起屏幕显示效果的改变或硬盘读写的发生或光驱的动作或声音的输出等。这就呈现除对人有意义的外在效果。3、程序概念程序就是一个行动指导书,一个电影剧本
3、,一个计算公式,来指导处理器状态按计划有规律的进行变化,从而达到预期的效果。用计算机术语表达就是一系列指令,指导处理器有规律的运行.4、程序分类最原始的就是直接指导处理器运行的指令,设计这样的指令序列并记录下来就形成了汇编语言,汇编语言是用来指导一线工人如何一步步工作的.汇编语言不方便做大工程,将汇编语言进行抽象,汇总,用新的抽象指令来代替一串汇编指令,这样的抽象指令也可组织乘一个指令序列,这就是高级语言如“习语言”。高级语言是指导公司、企业内各部门如何一步步协调工作完成公司目标的。人是懒惰的,再偷些懒,就会希望能用自然语言来表达
4、,让及其来适应人类语言,理解人类语言的意思而进行工作。这就是自然语言。由于自然语言存在模糊和二义性,目前还没有实现,是未来的工作。5、程序设计的相关过程(1)分析问题,构思处理过程(2)编写代码(3)解释执行或编译成目标代码后运行。6、解释执行与编译执行的区别解释就是拿原文件来直接解析后运行,每次运行都需要解析原文件。开发者保存的是源文件,给使用者使用的也是源文件。解释执行不便于保护开发人员的劳动成果,同时一定要有解释器的存在才能运行。如VB就是解释执行的语言.编译执行是将代码通过编译转换为机器代码后再执行,开发者保存源代码,对使
5、用者发布目标代码,由于机器代码很难阅读分析。可保护开发者的劳动成果。如C、C++另外还有一种介于两者之间,先编译成中间代码,再对中间代码解释执行,配不同平台的解释器同样代码可在不同平台上运行。实现跨平台目的。节省开发者的劳动。.二、看例子来理解1、汇编语言例子假设处理器可以识别的指令为:取数据,存数据,加,减,乘,除,处理器有数据寄存器1、数据寄存器2希望完成如下运算:2+3*5假设原始数据分别位于内存单元甲:2乙:3丙:5要求运算结果存在内存单元甲内:可设计汇编程序如下:取内存单元乙内容到寄存器1取内存单元丙内容到寄存器2做乘运
6、算(假设结果保存在寄存器1中)取内存单元甲内容到寄存器2做加运算(假设结果保存在寄存器1中)存寄存器1中数据到内存单元甲中这就是汇编程序,执行这段程序即可得到预期效果.2、习语言例子同样上面的运算,用习语言可以表达为:整数类型 甲=2,乙=3, 丙=5;甲 = 甲+乙*丙;由以上可见,习语言表达比汇编语言精简,逻辑更清晰直观。三、汇编语言汇编语言是使用处理器的指令集直接对硬件进行编程的,不同的处理器有不同的指令集和编程模型,所用的汇编语言也不同。汇编语言设计的活动依次有:1、任务分析或构思2、汇编语言实现3、汇编,有报错的话则转步
7、骤2修改。4、连接,运行5、结果是预期的吗?不是则调试分析。6、结束由于汇编语言和硬件紧密相关,复杂度比较高,不建议一般人员学习。故此处省略不做进一步说明。四、习语言习语言由预处理器、编译器、汇编器、连接器、调试器组成。习语言源程序是纯文本文件,可以使用任何纯文本编辑器进行书写和编辑。也可以使用WPS进行编写,保存时保存为纯文本文件即可。预处理器对源文件中的包含文件和宏进行解析处理,生成无预处理指令的习语言文件。然后由编译器进行编译,生成汇编代码。汇编器对汇编代码进行编译,生成目标代码文件,连接器将一个或多个目标代码文件与库文件进
8、行连接,生成可执行文件。执行可执行文件,若碰到运行错误,可以使用调试器跟踪运行,分析软件存在的问题并解决。汇编器、连接器、库文件和调试器通常都和特定的操作系统、特定的处理器相关,差别比较大。本文将主要关注源文件的编写方法。习语言原文件由预处理指令、
此文档下载收益归作者所有