机器语言:程序员需要一双灵巧的手

原创
开发 开发工具
计算机世界里只有0和1,也就是高低电平之分。但是人类的语言千变万化,如何才能达到人机互动的目的呢?想想20世纪五六十年代的程序员,他们需要适应机器语言,同时还要有一双灵巧的手去给纸带打孔。

【51CTO年终策划】在ENIAC计算机之后的十多年,计算机的发展进入了微电子时代。计算机的体积不断减小,而计算能力却不断提高。在这种提高的过程中,人们已经不再满足于简单的数学计算,而需要计算机能够实现更多的功能。

可是各计算机公司设计生产的计算机,其指令的数量与功能、指令格式、寻址方式、数据格式都有差别,即使是一些常用的基本指令,如算术逻辑运算指令、转移指令等也是各不相同的。事情一直到1964年才有了转机。

1964年,在设计IBM360计算机时所采用的系列机思想较好地解决了不兼容的问题。从此以后,各个计算机公司生产的同一系列的计算机尽管其硬件实现方法可以不同,但指令系统、数据格式、I/O系统等保持相同,因而软件完全兼容(在此基础上,产生了兼容机)。当研制该系列计算机的新型号或高档产品时,尽管指令系统可以有较大的扩充,但仍保留了原来的全部指令,保持软件向上兼容的特点,即低档机或旧机型上的软件不加修改即可在比它高档的新机器上运行,以保护用户在软件上的投资。

计算机纸带 

密密麻麻的纸带记录着开发命令

在当时为了适应机器语言,人们开发出来打孔纸带以方便录入程序。相信很多程序员在上大学时,听到过计算机教授讲当年的程序开发是剪刀加浆糊的流程。程序出错了不能像现在这么方便的更改,而是需要拿浆糊把纸带重新制作一遍。

机器语言是指一台计算机全部的指令集合

电子计算机所使用的是由"0"和"1"组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由"0"和"1"组成的指令序列交由计算机执行,这种计算机能够认识的语言,就是机器语言。使用机器语言是十分痛苦的,特别是在程序有错需要修改时,更是如此。

指令系统

计算机指令系统

因此程序就是一个个的二进制文件。一条机器语言成为一条指令。指令是不可分割的最小功能单元。而且,由于每台计算机的指令系统往往各不相同,所以,在一台计算机上执行的程序,要想在另一台计算机上执行,必须另编程序,造成了重复工作。但由于使用的是针对特定型号计算机的语言,故而运算效率是所有语言中***的。机器语言,是***代计算机语言。也是***代编程开发的语言。

【编辑推荐】

  1. 论:如何成为有思想、能创新的程序员
  2. 3种类型的程序员:“虫族”,“人族”,“神族”
  3. 程序员的十个层次 你属于哪一层?
  4. 是什么成就了一名“高级”程序员? 
  5. 程序员的十大技术烦恼
  6. 架构师最怕程序员知道的10件事
责任编辑:彭凡 来源: 51CTO
相关推荐

2020-08-17 17:31:00

戴尔

2011-01-04 17:08:10

汇编语言

2020-04-19 21:03:43

编程语言程序员Java

2017-11-18 23:26:46

戴尔

2023-12-26 18:47:32

2013-04-28 11:03:41

编程语言程序员私有云

2014-11-21 10:03:22

2018-11-07 15:30:31

程序员工作技术

2011-05-19 08:19:50

Lisp

2020-11-29 17:08:50

程序员IT

2015-06-24 10:33:17

程序员擅长数学

2011-07-07 14:47:15

PHP

2014-10-20 12:19:09

程序员

2015-07-09 10:30:35

程序员必备经验

2011-05-30 14:50:56

程序员

2009-03-02 09:40:13

程序员程序语言开发

2013-08-20 09:33:59

程序员

2011-07-28 09:43:11

云计算

2011-03-22 15:05:45

IBMWatson智慧

2017-11-08 12:38:02

点赞
收藏

51CTO技术栈公众号