程序设计语言学习

人,程序,计算机

  计算机的诞生就是为了帮助人们完成一些任务。计算机以其速度快、失误少、持续时间长、保存时间久等特点弥补了人类的不足。

  程序是计算机完成人类任务的计划书、说明书、指导书或者说是执行步骤。

  运行程序就是计算机照着计划书执行任务的过程。

  程序设计语言则是人们写计划书的语言。与人们给自己写计划书用汉语、英语等语言一样,人们给计算机写计划书要用计算机能够认识的语言——机器语言,也就是01串。这也是可编程计算机刚刚出现时人们使用的语言。

  但是01这种二进制的语言不好记忆、不好交流、不好理解,于是人们又用英文短词来替换01串,出现了汇编语言。汇编语言至少从字面上可以理解其含义了。汇编语言写好程序,使用汇编器变成机器语言,再让计算机执行。

  说到这里,需要提出一个点:语言的内容是有限的,就像汉字个数、英语单词都是有限的(在一定程度上),但是使用语言做出来的文章是无限的。机器语言、汇编语言也是有限的,而且基于冯*诺依曼体系的计算机所能认识的机器语言不仅内容有限,结构也是有限的。这两点使得对应的汇编器可以将所有对应的汇编程序变成机器语言程序。

  这里的的有限内容和结构就是——数据和对数据的操作(传输、处理)。

  汇编语言是针对特定机器语言的,机器语言是针对特定机器的,也就是特定的CPU。不同厂商、不同的架构、不同的系列,再加上越来越多新功能的加入,使得CPU对应的机器语言在内容上有了些区别。对应的汇编语言也有了区别。人们开发的程序,也就只能在特定的机器上使用了,到其他的机器上就不能用了,人们就不得不针对新的机器开发相同的功能的程序。这当然不好了,于是高级编程语言就出现了。

  高级编程语言编写的程序,使用特定机器上的编译器/解释器,转换为对应的汇编程序,再在机器上执行。

  现在就到了我学习的高级程序设计语言。

  高级程序设计语言种类很多,Java/C/C++/C#/Python/Ruby/Perl/JS等等。作为从机器语言—>汇编语言—>高级语言一路走来的高级编程语言,理论上他们都可以写出让计算机执行的的计划书。然而这些语言的设计者们关注的重点、想法不同,使得这些语言有了差别——关键字、命名、大小写等等。但是他们都是汇编语言上面的高级语言,需要变成汇编语言程序才能运行,所以他们有了从机器语言、汇编语言传承下来的相同点——他们的内容就是数据和对数据的操作。

  高级程序设计语言的要点:

  1、基础语法——数据的表示,对数据的操作的结构和意义(运算符、运算符优先级、语句结构、关键字等)

  2、流程控制——对数据的操作顺序(goto/if else/do while/switch case/for/foreach)。

  3、对数据和数据操作的组织——数据类型、名字、函数、模块/包、散列、类

  4、程序开发中的一些特性——错误处理、并行开发

时间: 2024-12-25 17:40:44

程序设计语言学习的相关文章

高级程序设计语言学习2

高级程序设计语言的学习,不仅要学习具体语言的使用,更要学会如何快速掌握一门新的编程语言. 编程语言相对于自然语言来说,结构更简单,只是在计算机新功能的出现.开源的流行的现在,编程语言的种类越来越多,语言的内容越来越多.但是,内容增多,在很大一定程度上只是类库的扩充,这些在一定程度上不用我们完全去记忆,只在需要时搜索.查询. 编程语言知识点: 数据,数据是从硬件内存.寄存器抽象上来的,也可以成为变量,简单的有整数.布尔值.字符,还有字符串.浮点数等.这些是几乎所有编程语言都有.不同语言在数据方面的

C程序设计语言学习<一>

前言:目前在学习K&R的书<C程序设计语言学>,由于有好几年没有接触过C语言,所以此次重新学习,吸取了网上前辈们的经验:养成良好的写代码风格及通过博客学习总结与思考.   今天看到书中关于华氏温度与摄氏温度的转换表程序,对浮点型与整型数据有了初步了解.在进行练习习题1-3时,先将答案代码在VC++6.0敲了一遍,即便如此,还是发现了部分问题如下: 1.格式控制字符串用于指定输出格式.格式控制串可由格式字符串和非格式字符串两种组成.格式字符串是以%开头的字符串,在%后面跟有各种格式字符,

C语言学习笔记(1)

由于项目要求,需要学习iOS移动端开发.iOS开发的核心语言是Objective-C,Objective-C是在C语言的基础加了一层面向对象的语法.为了能够更好地掌握Objective-C,故先学习C语言,再在C语言的基础上升华到Objective-C. 一.初认C语言 C语言简史 C语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前是用汇编写的): 随着UNIX操作系统的成功,C语言也得到了大幅度地推广,至今还是世界上最流行.使用最广泛的高级程序设计语言之一: C语言是一门

重读《C程序设计语言》(2):导言

这一章主要是概要的介绍C语言,通过实际程序引入C语言的基本元素.至于具体细节,后续章节将进一步介绍. (1)学习一门新程序设计语言的唯一途径就是使用它编写程序. /* * Copyright (C) [email protected] */ #include <stdio.h> main() { printf("hello, world\n"); } (2)在UNIX中,要运行上述代码,首先要在某个文件中建立这个程序,并以" .c "作为文件的扩展名.通

关于c语言学习 谭浩强的书

2007-11-16 13:22:58|  分类: PROGRAMME |  标签: |举报 |字号大中小 订阅 广大有志于从事IT行业的同志们,在你们进入这一行之前千万请看这篇文章!太经典了!对你绝对有启发! 千万别买谭浩强和等级考试的书!!!!!! 整理别人的言论,请大家踊跃讨论!!!!!!!!!!!! 1:书皮上面有那么多的牛人题词,估计也许是自己的水平太低. 2:ANSI只给了两种方式:int main(void) {/*...*/}和 int main(int argc, char *

对于《C程序设计语言》的一点理解

想必学C语言的人大都看过这一经典书籍.对于我来说,处于不同学习层次,阅读这本书的感觉是不一样的,每次阅读都会有一番新的感悟.第一次阅读时先读的英文版,读的很困难,主要是记录不会的单词:第二遍就顺利多了,但是对于其中的内容缺乏较深入的了解:第三遍就直接买了机械工业出版社出版的中文版,尝试读了一遍,但是对于后面几章特别是指针部分几乎读不下去:然后就开始做上面的练习,主要是做了前6章的练习,这其中费了不少时间和精力,还有一部分练习没有做. 对了,需要对这一分类下的博文做出几点说明. ①笔记中所说的[教

Oberon程序设计语言简介

Oberon奥伯龙是一种通用编程语言,也是一种同名操作系统(由Oberon语言开发,且也参考过贝尔实验室的新一代网络操作系统Plan9),是由原Pascal程序设计语言的发明者Niklaus Wirth创造并实现,由Pascal发展而来,其语法优雅简洁,高效易用,适用于ARM等多种处理器应用.且Oberon可用于开发系统程序和应用程序. **1,设计** Oberon设计有一个座右铭是艾伯特爱因斯坦的想法:“把事情变得尽可能的简单,而不是更简单.”的方针是将注意力集中在那些基本的和必要的,忽略短

C语言学习--八皇后问题

问题描述: 在8X8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行.同一列或同一斜线上,问有多少种摆法. 程序设计: 1.一维数组a[17],数组分成三段,第一段a[0]用来标记八皇后安置完成:第二段a[1,8]用来标记列位置有无子,方便判断列冲突:第三段a[9,16]用来标记存储位置. 2.关键算法 递归判断位置,eightQueens . 3.对角线位置互斥判断, isDiagonal. 4.输出函数, printResult. 算法描述: 1.首次传入为数组a

R语言学习笔记

參考:W.N. Venables, D.M. Smith and the R DCT: Introduction to R -- Notes on R: A Programming Environment for Data Analysis and Graphics,2003. http://bayes.math.montana.edu/Rweb/Rnotes/R.html 前言:关于R 在R的官方教程里是这么给R下注解的:一个数据分析和图形显示的程序设计环境(A system for data