账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    现在编译器包括了汇编器吗
    55
    0

    javac将.java编译成.class文件,.class是中间代码文件,并不是假定的机器代码,class文件又交给Jvm来运行处理。
    jvm是属于后端编译器吗?,假设jvm是后端编译器,jvm里面包括了汇编器吗,是如何编译成机器语言的。大佬们,能告诉我大概的主要流程吗?很好奇。

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 现代编译器通常包含汇编器,但并非所有编译器都这样。编译过程一般分为前端和后端,其中:

      1. 前端:负责词法分析、语法分析、语义分析以及优化,将源代码(如C++、Java等)转换为中间代码(如抽象语法树AST、字节码或三地址码等)。

      2. 后端:负责目标代码生成,即将中间代码转换为目标机器的指令集,这一阶段通常包括代码优化和汇编过程。汇编器负责将汇编语言转换为机器语言。

      因此,虽然不是所有的编译器都将汇编器作为一个独立的组件存在,但在实际的编译过程中,往往包含了汇编的功能,即把经过编译优化后的中间代码转换为目标平台的机器语言代码。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部