汇编语言(assembler)是一种计算机程序语言,能够将基本的计算机指令转换为处理器可以识别的二进制数据,进而执行计算机操作。有些人称汇编语言为assembler 语言,也有人称其为assembly 语言。

汇编语言的工作原理:

1)几乎每台计算机都配备了一套基本指令集,其中的指令对应着计算机能够执行的一些基本操作。比如,可以用”Load”指令使处理器将一个字符串从内存中读入特殊寄存器中。假设处理器有至少八个寄存器,从一到八按序排列,那么通过执行下列代码,处理器可以将字符从内存中转移到八号寄存器中去。

L 8,3000

2)程序员可以按序书写一系列的汇编语言指令。

3)程序员写好的汇编语言指令集合又称为源码或者源程序,当汇编程序开始执行时,就开始执行源代码。

4)汇编程序将每行汇编语言生成对应的二进制数据,在计算机看来,也就是一系列的0,1组合。

5)汇编程序生成与源程序相对应的对象文件。对象文件中同样是一系列的0,1组合,被称为机器码。

6)最后执行生成的对象文件,也就是可执行文件。

实际上,早期的程序员都是直接用机器码编写程序,汇编语言及机器指令集的出现大大加速了编程的速度。今天,汇编语言通常用在需要高效操作的场合中。利用汇编语言的程序员需要了解语言所在机器的机器指令集。于是又出现了高级语言,这种语言对所有的计算机都能适用,不依赖于特定的机器指令集和,简单易学,这些语言包括COBOL,FORTRAN,PL/I以及C语言都是高级程序等等。通过编译器,可以将高级语言转换为机器码,进而生成可执行文件。

随着程序语言的不断进步,产生了虚拟机的概念。比如,利用Java编程时,编译器生成的代码并不对应具体机器,而是对应一个虚拟机,虚拟机实际上是一个理论上的计算机,能够执行大部分的计算机指令。当编译器生成虚拟机对应的机器码后,就可以在任何安装了java虚拟机上的机器上运行程序。虚拟机可以保证不同计算机操作系统的字节长度以及其它特性能够支持java代码的运行。

c语言通过编译器编译转换为机器码,assembler - TechTarget数据中心相关推荐

  1. c语言通过编译器编译最终转换为机器码,编译器

    编译器 [2021-02-20 23:21:28]  简介:  简单讲,编译器就是将"一种语言(通常为高级语言)"翻译为"另一种语言(通常为低级语言)"的程序. ...

  2. c语言实现编译器编译原理,编译原理课程设计--C语言编译器实现.doc

    编译原理课程设计--C语言编译器实现 甘肃政法学院 编译原理课程设计 题 目 C语言编译器实现 计算机科学学院计算机科学与技术专业10 级 计本 班 学 号: 201081010137 姓 名: 杨青 ...

  3. SNL语言词法编译器----编译原理课程设计1

    主要思路:从一个文件中,得到一个个的字符,然后对字符进行判断处理,在判断的时候会用到DFA(有限自动机)进行状态之间的转换. 得到的单词主要分为几种类型:标识符.保留字.数字.标点符号.将他们分别进行 ...

  4. keil如何看c语言编译器,MDK Keil编译器编译窗口的设置

    MDK Keil编译器编译窗口的设置 在使用MDK Keil编译器时会遇到一些和编辑窗户设置相关的问题,如字体的大小.颜色,字符字符串的颜色等.现按照配置(configuation)的顺序归纳如下: ...

  5. c语言编译器下载 天天,简单C语言编译器(编译原理)

    简单C语言编译器(编译原理) (26页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 14.90 积分 #include#include#include# ...

  6. 编译原理课程设计-C语言子集编译器(Java实现)

    编译原理课程设计-一个C语言子集编译器 项目地址 https://github.com/qiushuang139/c-compliers 联系方式: email:qiushuang820@outloo ...

  7. html语言的编译器,50 行代码的 HTML 编译器

    虚拟 DOM 几乎已经是现代 JS 框架的标配了.那么该怎样将 HTML 字符串编译为虚拟 DOM 呢?这样的编译器并不是什么黑科技,这里只用了不到 50 行 JS 就实现了一个. Demo 在 HT ...

  8. 在易语言代码中嵌入汇编/机器码

    在易语言代码中嵌入汇编/机器码                    --"置入代码"的使用方法简介 作者:liigo 原文链接:http://blog.csdn.net/liig ...

  9. 关于HotSpot VM以及Java语言的动态编译 你可能想知道这些

    目录 1 HotSpot VM的历史 2 HotSpot VM 概述 2.1 编译器 2.2 解释器 2.3 解释型语言 VS 编译型语言 3 动态编译 3.1 什么是动态编译 3.2 HotSpot ...

  10. 【C语言】C语言Code的编译与执行

    1.编译并执行一个简单的C程序(不依赖IDE) C程序可以在许多不同的机器上运行.这种可移植性是C语言的另一个优点.程序首先在目标机器上使用C编译器编译.存在略有不同的C编译器版本,包括cc(C编译器 ...

最新文章

  1. JVM 出了问题 EXCEPTION_ACCESS_VIOLATION
  2. 送你6份最新开源代码!含NLP、ML、计算机视觉方向(附代码论文)
  3. 区域经济、地理信息、互联网三者交叉之行业背景分析
  4. eclipse if代码折叠_仅需一页Java代码就能实现网页源码爬取
  5. Lua游戏开发----模块
  6. 存储芯片在智能化产业链中扮演的角色将更加重要
  7. 安卓案例:绑定和解绑服务
  8. R语言分类算法之朴素贝叶斯分类(Naive Bayesian Classification)
  9. 读源代码学Asp.net Ajax(一)
  10. 三列自适应布局(圣杯布局)
  11. 浩方对战平台原理分析
  12. 新生开始学c语言----c语言的概述
  13. Python基础——标准数据类型
  14. Android Studio查看错误信息
  15. 神经网络的多任务学习概览
  16. Android中相册的实现
  17. Android7.1.1 remap鼠标右键为返回键
  18. 立法机关从83辆减0辆
  19. 由 serverAdd.sin_addr.s_addr 引发的思考
  20. 收藏了4年的android app源码下载

热门文章

  1. 数字电子钟—VHDL 设计
  2. no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.
  3. usb万能驱动win7_给 win7 系统镜像添加驱动
  4. 【小白话通信】离散分布之间的关系
  5. 计算机硬盘图标闪烁,电脑本地磁盘图标显示异常如何解决
  6. 抖音小程序是什么_如何开发抖音小程序
  7. 智能建造与建筑工业化协同发展主战场之一:攻克核心工业软件
  8. win10使用软件提示“为了对电脑进行保护,已经阻止此应用”或软件上面有盾牌不能正常打开软件。
  9. 第五模块 常用邮件沟通场景(1):求职信
  10. 计算机操作系统 共享性,计算机操作系统的功能和分类探析