码迷,mamicode.com
首页 > 其他好文 > 详细

编译原理开坑中……

时间:2019-03-26 01:41:18      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:rip   post   pre   ack   cimage   原理   form   解释   auto   

编译原理

简介

  • 编译器和解释器

    /*
    
    input --> C --> output  可执行的程序       offline
    
    input --> I --> output 结果           online
    
  • /* 编译器的结构
    
    I --> 前端 --> 后端 --> O
    
    详细:
    
    I --> 【词法 --> 语法】-->【指令生成 --> 优化】 --> O
    

    技术图片

  • 栈式计算机

    /* 
    
    两条指令 push add
    
    伪代码
    // push 是压栈的意思
    
    push 1
    push 5
    push 6
    
    add {
      x = pop();
      y = pop();
      z = x + y;
      push z
    }
    
    
    
    任务:编译程序 1 + 2 + 3 到栈式计算机
    
    “1 + 2 + 3” --> 语法分析 --> (+)  --> 代码生成(树的 post order) --> stack
                            /                           (+)   (3)
                          /                         1    2
    
      n 代表数字
    (1)   n: push n
     (2)   +: add
    
    
    
     总结:
      --> 前端 --> 语法树 --> 后端 --> 代码生成
    
      优化:
    
      --> 前端 --> 语法树1 --> 优化 --> 语法树2 -->后端 -->
    
    

编译原理开坑中……

标签:rip   post   pre   ack   cimage   原理   form   解释   auto   

原文地址:https://www.cnblogs.com/owenqing/p/10597642.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!