Ⅰ 汇编语言是怎样运行的
所汇编语言,经过编译环境进行编译之后就变成了真实的指令机器码。 (就是微机原理所说的指令)也就是微机 硬件给软件提供的接口,指令集,如intel的cpu就是intel的指令集,其实就是能够实现一些基本操作功能的指令(二进制电平形式 ),汇编就是为了方便你去使用
C 语言 和 高级语言 也一样 ;也是需要 经过c的编译工具 翻译成 机器码,然后 加载到内存里就可以执行了。 既然都学到汇编了,微机原理 应该 也差不多了,冯氏的结构模型应该知道 ;
Ⅱ 怎么运行汇编语言
汇编语言源程序运行方法:
1、找到一段起始地址为sa:0000(即起始地址的偏移地址为0)的容量足够的空闲内存区。
2、在这段内存区的前256个字节中,创建一个称为程序段前缀(psp)的数据区,dos利用psp来和被加载程序进行通信。
3、从这段内存区的256字节处开始(在psp的后面),将程序装入,程序的地址被设为sa+10h:0;空闲内存区从sa:0开始,0~255字节为psp,从256字节处开始存放程序,为更好地区分psp和程序,dos将划分到不同的段中,如下这样的地址安排:
空闲内存区:sa:0
psp区:sa:0
程序区:sa+10h:0
注意:psp区和程序区虽然物理地址连续,却有不同的段地址。
4、将该内存区的段地址(sa)存入ds中,初始化其它相关寄存器后,设置cs:ip指向程序的入口(sa+10h:0)。
Ⅲ C语言文件的编译与执行的四个阶段并分别描述
开发C程序有四个步骤:编辑、编译、连接和运行。
任何一个体系结构处理器上都可以使用C语言程序,只要该体系结构处理器有相应的C语言编译器和库,那么C源代码就可以编译并连接到目标二进制文件上运行。
1、预处理:导入源程序并保存(C文件)。
2、编译:将源程序转换为目标文件(Obj文件)。
3、链接:将目标文件生成为可执行文件(EXE文件)。
4、运行:执行,获取运行结果的EXE文件。

(3)汇编编译与运行扩展阅读:
将C语言代码分为程序的几个阶段:
1、首先,源代码文件测试。以及相关的头文件,比如stdio。H、由预处理器CPP预处理为.I文件。预编译的。文件不包含任何宏定义,因为所有宏都已展开,并且包含的文件已插入。我归档。
2、编译过程是对预处理文件进行词法分析、语法分析、语义分析和优化,生成相应的汇编代码文件。这个过程往往是整个程序的核心部分,也是最复杂的部分之一。
3、汇编程序不直接输出可执行文件,而是输出目标文件。汇编程序可以调用LD来生成可以运行的可执行程序。也就是说,您需要链接大量的文件才能获得“a.out”,即最终的可执行文件。
4、在链接过程中,需要重新调整其他目标文件中定义的函数调用指令,而其他目标文件中定义的变量也存在同样的问题。
Ⅳ 汇编编译器的工作和生成可执行文件的执行过程是怎样的
汇编器,先生成目标代码,其中有一些数据,代码,还有一些表(重定位表等)
然后调用链接器,链接成可执行文件。
早期的汇编器,只负责生成目标代码,链接器是一个独立的程序。
需要手工分别作汇编,和链接
现在的汇编器,可以合并这两步,直接调用链接器,是直接生成可执行文件。
伪指令是汇编命令,是用来操作汇编器的命令。
不是指令,不生成对应的代码。
CPU只能识别二进制代码,数据通过加载器的加载,或者烧写器的烧写,初始化,有些代码,会在加载时重新定位。
代码也可能是烧写的,比如BIOS代码。
对于PC:
操作系统的启动代码,是由BIOS中的专门代码;
从磁盘的固定位置,加载在内存的固定位置的。
操作系统的其他部分,是由操作系统的启动代码加载的。
Ⅳ 请问汇编程序, 解释程序, 编译程序分别指
1、汇编程序
把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。汇编程序输入的是用汇编语言书写的源程序,输出的是用机器语言表示的目标程序。汇编语言是为特定计算机或计算机系列设计的一种面向机器的语言,由汇编执行指令和汇编伪指令组成。
采用汇编语言编写程序虽不如高级程序设计语言简便、直观,但是汇编出的目标程序占用内存较少、运行效率较高,且能直接引用计算机的各种设备资源。它通常用于编写系统的核心部分程序,或编写需要耗费大量运行时间和实时性要求较高的程序段。
2、解释程序
解释程序是一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但在运行用户程序时,它直接执行源程序或源程序的内部形式(中间代码)。因此,解释程序并不产生目标程序,这是它和编译程序的主要区别。
3、编译程序
编译程序也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。
它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。

(5)汇编编译与运行扩展阅读:
工作过程
1、汇编程序
输入汇编语言源程序。检查语法的正确性,如果正确,则将源程序翻译成等价的二进制或浮动二进制的机器语言程序,并根据用户的需要输出源程序和目标程序的对照清单;如果语法有错,则输出错误信息,指明错误的部位、类型和编号。最后,对已汇编出的目标程序进行善后处理。
2、解释程序
由总控程序完成初始化工作。依次从源程序中取出一条语句进行语法检查,如有错,输出错误信息;如果通过了语法检查,则根据语句翻泽成相应的指令并执行它。检查源程序是否已经全部解释执行完毕,如果未完成则继续解释并执行下一条语句,直到全部语句都处理完毕。
3、编译程序
先进行词法分析与语法分析,然后生成中间代码,接着对程序进行多种等价变换来代码优化,最后生成目标代码。
Ⅵ 汇编语言中如何运行指令
1、点击开始->运行, 输入 cmd ,打开命令提示符;

4、在debug模式中,就可以输入自己想运行的汇编指令了。
Ⅶ 编译和汇编的区别是什么
1.定义区别
①编译原理旨在介绍编译程序构造的一般原理和基本方法。内容包括语言和文法、词法分析、语法分析、语法制导翻译、中间代码生成、存储管理、代码优化和目标代码生成。
②汇编语言(assembly language)是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
2.处理方式区别
①编译过程与解释挺像,区别就在于编译是将所有的源代码指令一次性成翻目标代码并执行。
②汇编过程就是把汇编指令一对一地翻译成01机器码的过程。而采用这种处理方式的语言只有一类:汇编语言。

3.特点区别
①编译语言的特点就是不需要解释器的参与,所以运行比较快,但是编译好的程序只能在当前平台运行,是个局限性。
②汇编语言是当今世界上历史最早,应用最广,功能最强大,运行速度最快的编程语言。但是汇编语言开发工期长,可读性差,并且不能跨平台编程。
Ⅷ 汇编和编译程序的区别急
汇编程序是将汇编语言(低级语言)翻译成二进制机器指令的程序
编译程序是将高级语言(java,c++)翻译成二进制机器指令的程序
Ⅸ 可以编译和运行汇编语言程序么
这个,你是不是补充一下问题,实在是不清楚你的问题的主题是什么。我估计没有人回答也是这个原因。
汇编语言程序当然是可以编译和运行的,这毫无疑问。
我猜你是想问如何搭建编译运行环境吧?如果是这样,有几种方案可供选择:
使用emu8086程序,不错的集成环境,缺点是需要花钱的。
使用dosbox模拟dos环境,在模拟环境中编译、运行、调试,主要用于学习。
我曾写过一个《dosbox安装使用说明与打包程序》的文档,你可以搜索一下看看。
使用vmware之类的虚拟机,在上面安装dos操作系统,在该系统中进行学习(这个比较麻烦,不推荐。好处是完全虚拟dos环境,但与外界交互文件等比较麻烦)
有些国产的集成环境,好像也是集成了dosbox,我自己没用过,有兴趣的话,你可以查找一下试试。