程序设计语言

03-计算机软件 飞快学 388浏览

程序的核心是算法。

软件的主体是程序。程序的核心是算法。

程序设计语言的分类:机器语言、汇编语言、高级语言

机器语言就是CPU的指令系统,是二进制数,是硬件唯一的可直接执行的语言。不可移植。(这是因为不同机器的CPU的指令系统不同,因而机器语言不同。)

汇编语言就是符号语言,几乎直接对应二进制的机器指令,不能直接执行。(要先通过汇编程序(一种系统软件),将汇编语言程序整个汇编成机器语言程序,然后才能执行。)也是不可移植的。(这是因为它几乎直接对应二进制的机器指令,而不同CPU,其指令系统通常不同。因此不可移植。)

高级语言就是面向人的语言(机器语言与汇编语言是面向机器的语言)。高级语言写的程序是可移植的(这是因为它远离机器,不面向机器,因而抽象级别高),但不可直接执行。

高级语言与机器语言(或汇编语言)比较:高级语言开发的效率高,机器语言开发的效率差。但机器语言执行性能高,高级语言执行性能差些。高级语言不能直接执行,而机器语言可直接执行。高级语言的程序可移植性高。机器语言或汇编可移植性差。

高级语言的程序的执行有两种方式:编译方式和解释方式

编译方式:先通过编译程序(一种系统软件)变成等价的机器语言程序,然后再运行该机器语言程序。

解释方式:取出高级语言程序中的一条语句,立即按语句的含义解释执行;然后再取下一条语句,解释执行;反复这样做。

编译方式特点:程序运行性能高,用于写复杂性的程序。会生成等价的机器语言程序,但人机交到性差。

解释方式特点:程序的人机交互性好,不生成等价的机器语言程序。程序运行性能不高。适用于不复杂或性能要求不高的场合。

程序设计语言中的基本成分

包括四种:数据成分、运算成分、控制成分和传输成分。

1)数据成分:用来描述程序所处理的数据对象,如对数据类型和结构的说明。 如:int a=6; 这是数据成份。变量a与数值6都是数据成份。Int是变量a的数据类型,是整型。

2)运算成分:用来描述程序所包含的运算,如算术和逻辑表达式。

3)控制成分:用来表达程序中的控制构造。

4)传输成分:用来表达程序中数据的传输,如 I/O语句与赋值语句(如:x=3; 含义:将数值3传送给变量x中)。如:printf(“Hello”);或者:scanf(“%d”,&x);都是传输成份。

程序的三种基本结构:顺序结构、条件选择结构和重复结构。

常用程序设计语言

C (面向过程、通用程序设计语言、适合于开发系统软件、效率高)
C++ (从C语言发展而来、面向对象)
Fortran (面向过程、用于科学与数值计算,Fortran2003 是面向对象的)
Java (面向对象、用于网络平台、可跨平台运行)
VB (面向对象、可视化、事件处理)
C#(面向对象、运行于.NET平台、可跨平台运行、从C++、Java中发展而来)
ADA(模块化语言、用于实时控制、并发多任务如:飞行器控制)
MATLAB(面向矩阵数学运算,数学计算)
COBOL(面向过程、适用于商业、金融)
VBA(面向对象、嵌入在OFFICE软件中运行。常见的宏病毒就是用VBA编制)
Javascript和VBScript(面向对象、嵌入在网页中运行)

什么是面向对象?对象:就是将数据及对其的操作(运算)封装在一起,作为一个整体看待,也是新的数据类型。面向对象设计方法提供了封装、继承、多态机制。

示例:汇编语言和高级语言

汇编语言 Hello, World 的代码

#hellowrold.s print "hello,world!"

.section .data
	output:
		.ascii "hello,world\n"

.section .text
.globl _start
_start:
	movl $4, %eax
	movl $1, %ebx
	movl $output,%ecx
	movl $12,%edx
	int  $0x80
	movl $1, %eax
	movl $0, %ebx
	int  $0x80

高级语言(C语言)的 Hello, World 的代码

#include <stdio.h>
 
int main()
{
    printf("hello, world\n");
    return 0;
}