首页 > 编程语言 >10.1 汇编语言和本地代码是一一对应的

10.1 汇编语言和本地代码是一一对应的

时间:2023-02-14 14:57:35浏览次数:49  
标签:10.1 源代码 汇编语言 代码 C语言 反汇编 本地 一一对应

在加法运算的本地代码中加上add(addition的缩写)、在比较运算的本地代码中加上cmp(compare的缩写)等。这些缩写称为助记符,使用助记符的编程语言称为汇编语言。通过查看汇编语言编写的源代码和查看本地代码的源代码,是同一级别的。
用汇编语言编写的源代码,最终也必须要转换成本地代码才能运行。负责转换工作的程序称为汇编器,转换这一处理本身称为汇编。在将源代码转换成本地代码这个功能方面,汇编器和编译器是同样的。
用汇编语言编写的源代码,和本地代码是一一对应的。因而,本地代码也可以反过来转换成汇编语言的源代码。持有该功能的逆变换程序称为反汇编程序,逆变换这一处理本身称为反汇编(图10-1)

 哪怕是用C语言编写的源代码,编译后也会转换成特定CPU用的本地代码。而将其反汇编的话,就可以得到汇编语言的源代码,并对其内容进行调查。

不过,本地代码变换成C语言源代码的反编译,则要比反汇编困难。这是因为,C语言的源代码同本地代码不是一 一对应的,因此完全还原到原始的源代码是不太可能的。

标签:10.1,源代码,汇编语言,代码,C语言,反汇编,本地,一一对应
From: https://www.cnblogs.com/ttmeng/p/17119557.html

相关文章

  • HDLBits(9)10.13
    2Verilog语言2.5更多特点2.5.4组合for循环翻转输出一个长度为100的向量(使用组合always块)moduletop_module(input[99:0]in,output[99:0]out);......
  • 10.2通过编译器输出汇编语言的源代码
       除了将本地代码进行反汇编这一方法外,通过其他方式也可以获取汇编语言的源代码。大部分C语言编译器,都可以把利用C语言编写的源代码转换成汇编语言的源代码,而不是本......
  • 【8086汇编入门】《零基础入门学习汇编语言》汇编语言第4版
    1基础知识机器语言是机器指令的集合,由0和1组成,但是很长很复杂,汇编语言因此产生。汇编语言的主体是汇编指令。汇编指令是机器指令的便于记忆的书写格式。程序员写完汇编......
  • 10.11循环处理的实现方法
    接下来,让我们继续解析汇编语言的源代码,看一下for循环及if条件分支等C语言程序的流程控制是如何实现的。代码清单10-8是将局部变量i作为循环计数器连续进行10次循环的C语言......
  • 10.12条件分支的实现方法
        代码清单10-12中用到了三种跳转指令,分别是比较结果小时跳转的jle(jumponlessorequal)、大时跳转的jge(jumpongreaterorequal)、不管结果怎样都无条件......
  • 10.10
    函数内部利用的栈,在函数处理完毕后会恢复到初始状态,因此局部变量的值也就被销毁了,而寄存器也可能会被用于其他目的。因此,局部变量只是在函数处理运行期间临时存储在寄存器......
  • 10.4汇编语言的语法是“操作码+操作数”
    在汇编语言中,1行表示对CPU的一个指令。汇编语言指令的语法结构是操作码+操作数(也存在只有操作码没有操作数的指令)。操作码表示的是指令动作,操作数表示的是指令对象。操作......
  • 10.11循环处理的实现方法
    接下来,让我们继续解析汇编语言的源代码,看一下for循环及if条件分支等C语言程序的流程控制是如何实现的。代码清单10-8是将局部变量i作为循环计数器“连续进行10次......
  • 10.12条件分支的实现方法
    下面让我们来看一下条件分支的实现方法。条件分支的实现方法同循环处理的实现方法类似,使用的也是cmmp指令和跳转指令,这一点估计大家也预料到了。没错,条件分支就是利用这......
  • 10.13了解程序运行方式的必要性
    通过对C语言源代码和汇编语言源代码进行比较,想必大家对程序是怎样跑起来的”又有了更深的理解。而且,从汇编语言源代码中获得的知识,在某些情况下对查找bug的原因也是有帮......