通过之前的学习我们知道了计算机做任何工作都是由存储在其中的程序来控制的,而程序(Program)是由一条条的指令和各种数据组成的,而且这些指令和数据都是由只有 0 和 1 两种符号的二进制数来表示的(见代码清单 1)。

代码清单 1:机器语言代码片段

00000000 00111110 11001111

00000010 11010011 00000000

00000100 00111110 11111111

00000110 11010011 00000000

00001000 00111110 11001111

00001010 11010011 00000011

00010100 11000011 00010000 00000000

在计算机世界中,把这种用二进制代码表示的计算机能直接识别和执行的指令和数据的集合(程序)称为“机器语言”(面向机器的语言)。

机器语言是唯一一种 CPU 能直接理解并执行的编程语言,用其他语言编写的程序计算机是不能直接运行的,必须先转换成机器语言。

就如同在人类世界中把用 a~z 26 个英文字母组成的语言称为英语一样,在人类世界中,除了英语外,还有汉语、日语、法语等各种不同的语言。在计算机世界中,除了用二进制代码表示的机器语言外,还有汇编语言、BASIC 语言、Pascal 语言、C语言、Java 语言、Visual Basic 语言、PHP 语言、HTML 语言等,以上这些都统称为计算机的程序设计语言。

机器语言是最底层的计算机语言,用机器语言编写的程序都是由 8bit 二进制数构成的。每个 8bit 的二进制数都是有特定含义的指令或数据。可对于人而言,看到的都是 0 和 1 的组合,很难判断各个组合都表示什么。

于是就有人发明了另一种编程方法,根据表示指令功能的英语单词给每一种指令起一个相似的昵称,并用这个昵称来代替表示指令的 0 和 1 的二进制数组合,而数据则用我们更容易接受的十六进制数或十进制数来表示(代码清单2)。这种类似英语单词的昵称叫作“助记符”,我们把这种使用“助记符”的编程语言称为“汇编语言”。

代码清单 2:汇编语言程序示例(输出“Hello,world!”)

section .data                          ;数据段声明

msg db "Hello, world!", 0xA    ;要输出的字符串

len equ $ - msg            ;字串长度

section .text                          ;代码段声明

global _start                          ;指定入口函数

_start:                              ;在屏幕上显示一个字符串

mov edx, len              ;参数三:字符串长度

mov ecx, msg              ;参数二:要显示的字符串

mov ebx, 1               ;参数一:文件描述符(stdout)

mov eax,4                ;系统调用号(sys_write)

int 0x80                ;调用内核功能

;退出程序

mov ebx,0                ;参数一:退岀代码

mov eax, 1               ;系统调用号(sys_exit)

int 0x80                ;调用内核功能

用汇编语言编写的程序计算机是不能直接运行的,必须先转换成机器语言。机器语言是唯一一种CPU能直接理解并执行的编程语言。

汇编语言的助记符以及数据和机器语言的二进制代码都是一一对应的,都是针对计算机硬件的,也就是说都是面向机器的语言。不同的计算机硬件(CPU)所用的助记符和二进制代码是不一样的,所以这样的程序其通用性不好,如果把它移植到其他的计算机上就无法正常运行了。我们通常把机器语言和汇编语言称为低级语言。

总结

机器语言是唯一一种 CPU 能直接理解并执行的编程语言。

用汇编语言编写的程序计算机是不能直接运行的,必须先转换成机器语言。

c语言低级语言分为,认识C语言 -低级语言是什么?相关推荐

  1. c语言程序中的错误可分为,《C语言程序设计(本)》模拟试卷1.doc

    <C语言程序设计(本)>模拟试卷1 <C语言程序设计(本)>模拟试卷1 总分:100分 时间:90分钟 一.单项选择题 :(每题2分,共18分) 1.下列字符列中,可以作为&q ...

  2. 新南威语言班C加,11年澳大利亚新南威尔士大学语言班分为两类型

    03月30日讯<澳大利亚新南威尔士大学语言班分为两类型>由出国留学网liuxue86.com报道. 新南威尔士大学(https://aozhou.liuxue86.com/unsw)的语言 ...

  3. 如何用最短的时间学会C语言,并掌握C语言的精髓所在?

    点击上方蓝字关注我,了解更多咨询 及C语言,我想凡是学过它的朋友都有这样一种感觉,那就是"让我欢喜让我忧."欢喜的是,C语言功能非常强大.应用广泛,一旦掌握了后,你就可以理直气壮地 ...

  4. c语言程序的引言,C语言程序设计-第1章-引言

    <C语言程序设计-第1章-引言>由会员分享,可在线阅读,更多相关<C语言程序设计-第1章-引言(80页珍藏版)>请在人人文库网上搜索. 1.c语言编程,2,1 .你为什么学这门 ...

  5. 以下不属于C语言字符集的为,c语言第1章练习题答案

    第一章 C语言概述练习题 一.选择题 1. C语言是一种( ). A) 机器语言 B) 汇编语言 C) 高级语言 D) 低级语言 2. 下列各项中,不是C语言的特点是( ). A) 语言简洁.紧凑,使 ...

  6. c语言程序设计移动字母,c语言程序设计word版.pdf

    c语言程序设计word版 程序设计语言一般分为机器语言.汇编语言和高级语言三大类. 1.机器语言 对于计算机来说,一组机器指令就是程序,称为机器语言程序. 2.汇编语言 为了便于理解与记忆,人们采用能 ...

  7. c语言控制硬件指令,c语言如何控制硬件

    你们知道在C语言中如何控制计算机的硬件吗?下面是学习啦小编带来的关于c语言如何控制硬件的内容,欢迎阅读! c语言如何控制硬件? C语言是没办法控制硬件的 首先,C语言不能够直接对硬件进行操作.从本质上 ...

  8. 画出识别c语言注释的转换图,C语言程序设计基础与实训教程》第1章:基础知识.ppt...

    <C语言程序设计基础与实训教程>第1章:基础知识.ppt>由会员分享,可在线阅读,更多相关<C语言程序设计基础与实训教程>第1章:基础知识.ppt(25页珍藏版)> ...

  9. c语言编程宝典pdf,C语言编程宝典之一.pdf

    C语言编程宝典之一 作者:王大刚 本人的<FOXPRO编程宝典之一>,<FOXPRO编程宝典之二>和<FOXPRO 编程宝典之三>系列软件在<电脑报>配 ...

最新文章

  1. nanopore测序技术专题(六):测序错误率太高无法使用?
  2. HTTP报文简单介绍
  3. 在TFS中通过程序动态创建Bug并感知Bug解决状态
  4. selenium + python自动化测试unittest框架学习(五)webdriver的二次封装
  5. 5G 和云原生时代的技术下半场,视频化是最大最新的确定性
  6. SCARA四轴机器人丝杆花键_花键丝杆一体轴型SCARA机器人的制作方法
  7. 【计算机网络】ISO/OSI模型
  8. python实例 95,96
  9. 互联网晚报 | 12月14日 星期二 | “植发第一股”雍禾医疗登陆港交所;商汤科技将延迟上市;“拍照搜题”等作业APP暂时下线...
  10. 上项线体表位置_心理成熟的人都有哪些具体表现呢?
  11. 腾讯为60亿美元债券定价 为1年来亚洲最大美元债发行交易
  12. Yii2 composer更新后报错: Calling unknown method: yii\web\UrlManager::addRules()
  13. quartusII实验报告
  14. Cpu调优 mpstat 命令
  15. 调用微信扫一扫接口---实现二维码扫描(微信浏览器)
  16. 坚持整洁亦或拥抱混乱——新书《混乱: 改变我们生活的无序力量》解读
  17. python3.6从入门到精通mobi_Python 3.6零基础入门与实战epub
  18. 什么轴的机械键盘声音小
  19. 稀疏矩阵的存储方法(DOK、LIL、COO、CSR, CRS)
  20. python中文件包括文本文件和什么_使用Python删除文件中的括号和文本

热门文章

  1. Objective-C ---JSON 解析 和 KVC
  2. 2010-03-29 路由过程
  3. ssm开放式教学管理系统答辩PPT模板
  4. java httpurlconnection 设置编码_java – 通过HttpURLConnection发送UTF-8字符失败
  5. 卡内基梅隆 计算机音乐,音乐留学|卡内基梅隆音乐技术专业和申请要求详解!...
  6. 原生mysql启动_单实例MySQL的启动和关闭的方法
  7. mysql主从复制读写分离_MySQL主从复制与读写分离的工作原理
  8. QDataStream 多余字符的产生原因及消除方法
  9. 水松纸缺陷在线检测系统
  10. 以太网口差分电平_高速串行总线设计基础(八)揭秘SERDES高速面纱之CML电平标准与预加重技术...