宏汇编和小汇编的区别?

来源:百度知道 编辑:UC知道 时间:2024/06/09 22:50:07
宏汇编是不是在小汇编上的功能上加上伪指令功能?我是初学者,带宏汇编的是不是功能强大一点?

汇编不怎么好学,我劝你还是学别的吧!那个太麻烦了,

你的问题1:宏汇编和小汇编的区别?
呵呵,宏汇编严格的说根本不是真正的汇编指令
真正的汇编指令是由汇编器汇编成可执行文件的。
而宏指令则是在汇编器运行前由预处理器(名字挺玄乎的,其实就是先用的处理器的意思)把宏指令替换成预先存好的宏,和WORD里的替换差不多,没有很多的技术含量,主要目的是减少程序员的工作量罢了。。

你的问题2:宏汇编是不是在小汇编上的功能上加上伪指令功能?
不是,伪指令和宏有点接近,但是技术含量高点,也并不是真正的汇编指令,而是由编译器处理并理解你的意图,然后根据你的意图转换成汇编语句然后达到某些目的的,比如MASM中的INVOKE其实并不是汇编指令,但是编译器看到后会把它转换成汇编指令,依次把参数压入栈中,主要目的是简化编写过程。难度

你的问题3:谁强大?
我想告诉你,无论是伪指令还是宏,都不能使汇编变得强大。最好形成的可执行代码都是二进制文件,而他们所带来的帮助,仅仅是简化程序员的工作罢了。打个比方,汇编代码是一篇文章,那么宏就是校对、排版之类的技术含量,伪指令就是编辑之类的技术含量,虽然这两个会对文章的效果起到很重要的作用,但是并不会因此使一篇烂文章得诺贝尔奖~~

说实在的,宏汇编干的活儿可是不少。
如果是真正的,纯粹的汇编是不认识标号的。
宏汇编最大的改进在于支持标号,或者说需要多次扫描。
多次扫描在古老的机器上是十分浪费资源的!

下面是汇编语言和宏汇编的区别,写得比较清楚。
------------
Key concepts
Assembler
Compare with: Microassembler.
Typically a modern assembler creates object code by translating assembly instruction mnemonics into opcodes, and by resolving symbolic names for memory locations and other entities. Th