机器指令

早期的程序设计均使用机器语言。程序员们将用0, 1数字编成的程序代码打在纸带或卡片上,1打孔,0不打孔,再将程序通过纸带机或卡片机输入计算机,进行运算。这样的机器语言由纯粹的0和1构成,十分复杂,不方便阅读和修改,非常容易产生错误。

汇编

汇编语言的主体是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上。汇编指令是机器指令便于记忆的书写格式。

操作:寄存器BX的内容送到AX中
1000100111011000 机器指令
mov ax,bx 汇编指令

程序员们就用汇编指令编写源程序。可是计算机能读懂的只有机器指令,那么如何让计算机执行程序员用汇编指令编写的程序呢?这时,就需要有一个能够将汇编指令转换成机器指令的翻译程序,这样的程序我们称其为编译器。程序员用汇编语言写出源程序,再用汇编编译器将其编译为机器码,由计算机最终执行。

编译器

GAS即GNU AS汇编编译器,其属于AT&T风格,我们常用的GNU的产品还有GCC/G++

NASM是Linux平台下常用的汇编编译器,是intel风格的汇编编译器,更重要的是免费开源的软件

MASM是Windows平台下的汇编编译器,也使用Intel风格

笔者对开源软件也是情有独钟!

03.汇编语言和编译器相关推荐

  1. 《编译与反编译技术实战 》一2.3 编译器的设计与实现概述

    本节书摘来自华章出版社<编译与反编译技术实战 >一书中的第2章,第2.3节,庞建民 主编 ,刘晓楠 陶红伟 岳 峰 戴超 编著,更多章节内容可以访问云栖社区"华章计算机" ...

  2. 最严谨的计算机语言p,用于PLC的华P语言编译器设计及实现.pdf

    2009年10月 沈阳理工大学学报 V01.28No.5 OFSHENYANGUGONGUNIVERSITYOct.2 第28卷第5期 TRANSACTIONS 0 09 文章编号:1003-1251 ...

  3. ARM 之七 主流编译器(armcc、iar、gcc for arm、LLVM(clang))详细介绍

    必备   在讲解各编译器之前,必须先了解一下以下这些文件.这些文件在编译器目录下或者编译生成目标平台的可执行程序时经常见到.此外,还需要注意区分 Windows 平台 和 Linux 平台的文件. . ...

  4. 【IT资讯】华为方舟编译器编译工具正式发布和工具下载

    01. 概述 2019华为全球开发者大会将在8月9日-11日在华为松山湖基地召开.本次开发者大会邀请了1500位合作伙伴.5000名全球开发者,将是华为历来规模最大的一次会议.在这次大会上,华为方舟编 ...

  5. 【转】ARM 之七 主流编译器(armcc、iar、gcc for arm、LLVM(clang))详细介绍

    转自:ARM 之七 主流编译器(armcc.iar.gcc for arm.LLVM(clang))详细介绍_itexp-CSDN博客_armcc 必备   在讲解各编译器之前,必须先了解一下以下文件 ...

  6. 人人都能读懂的编译器原理

    编程语言是怎样工作的 理解编译器内部原理,可以让你更高效利用它.按照编译的工作顺序,逐步深入编程语言和编译器是怎样工作的.本文有大量的链接.样例代码和图表帮助你理解编译器. 作者注: 这是我在 Med ...

  7. 计算机CPU工作原理及汇编语言简介

    计算机CPU工作原理及汇编语言简介(链接)        从微信公众号把原文直接复制过来,发现图片.表格经常丢失,只有纯文字,所以建议直接点击上述链接阅读. 复制过来的纯文字内容如下(图片.表格丢失, ...

  8. ARM 之 主流编译器(armcc、iar、gcc for arm)详细介绍

    origin: https://blog.csdn.net/ZCShouCSDN/article/details/89553323 必备 在讲解各编译器之前,必须先了解一下以下文件.这些文件在编译器目 ...

  9. 00 汇编语言从小白到入门---先导课

    文章目录 一.为什么要学习汇编语言 二.什么是汇编语言 三.进制 1.什么是进制 2.定义自己的进制有什么用 3.进制运算的本质是什么--查数 八进制计算表如下: 4.为什么计算机要使用二进制? 5. ...

  10. 编程之法-C语言应用开发与工程实践-C语言概述

    浅谈计算机系统架构 计算机硬件系统 现代计算机是由运算器.控制器.存储器.输入设备.输出设备五大部分组成,它们各司其职,完成了数据的计算.存储.传输任务,整体架构如下图所示 下面是它们各个组件的功能介 ...

最新文章

  1. 【Codeforces】158B-Taxi(贪心,怎么贪咧)
  2. oracle 无效对象,Oracle编译用户无效对象
  3. JUKI贴片机RX-7R_JUKI贴片机_贴片机
  4. visual studio 2017插件安装qt
  5. 03- 网络最新流行
  6. Android四大组件---BroadcastReceiver
  7. psd文件用什么打开?如何修改psd文件?psd样式怎么修改文字?
  8. concat效率 mysql_MYSQL数据库mysql中or效率高还是in效率高
  9. 正交设计助手的使用教程(设计测试用例的工具)
  10. python评分卡模型
  11. Win10连接上了wifi但是打开浏览器显示网络异常,诊断网络发现错误“远程计算机或者设备将不接受连接
  12. Windows下模拟弱网(web、app)均可使用
  13. 简单的个人介绍网页【附代码】
  14. 3年开发了5个私人项目:自动化办公、网站、机器人、小程序...免费开源,拿走不谢~
  15. 飞塔60d带宽_飞塔防火墙划分带宽 万兆防火墙
  16. 天玥系列微型计算机,【简讯】AMD正式发布RX 6000系列显卡;OPPO K7x宣布…
  17. 异或高斯消元+暴搜 lights 燈
  18. 金蝶云苍穹Java笔试题_金蝶云苍穹基本操作及常见问题总结
  19. python正则匹配任意字符_Python 正则表达式 匹配任意字符的写法
  20. html ide iOS,用于ios开发的ide是 ios开发的ide有哪些

热门文章

  1. 面试官:什么是TCP粘包?粘包原因?如何解决?
  2. Android中的Apk的加固(加壳)原理解析和实现
  3. Access宏学习总结
  4. 漂亮有创意的思维导图模板下载教程,教你思维导图怎么画
  5. 白猫使用OCR文字识别
  6. 前端开发必备基础英文单词整理汇总
  7. Android MTK Metadata Configuration
  8. 今日头条阅读量怎么刷_自动刷今日头条阅读量 头条号自己刷阅读量
  9. Delphi2010及注册码下载地址
  10. 项目经理最核心的能力是什么?