zoukankan      html  css  js  c++  java
  • 自制编译器 青木峰郎 笔记 Ch12 x86架构的概要

    12.2 x86系列的CPU历史

    1. 遵循同一指令集架构的CPU应该能够执行依据该指令集架构编译的程序
    2. MMX指令用于整数并行处理,SSE用于浮点数并行处理
    3. AMD先于Intel提出了x86系列的64位扩展,其指令集架构称为AMD64,之后Intel提出了自己的Intel64,AMD64和Intel64合称为x86-64。此外,Intel还和HP一起开发IA-64,不过Core2和Xeon等64位CPU都不是这个IA-64的

    12.3 IA-32概要

    寄存器

    • 通用寄存器
    • 指令指针寄存器
    • flag register
    • MMX register
    • floating point number register
    • XMM register: 为了SSE指令
    • mxcsr register: 表示SSE指令的运算状态
    • system register
    • debug register
    • segment register

    机器栈

    在LA-32的Linux平台上,机器栈位于各个进程的地址空间中靠近3GB处,向0地址方向延申。栈顶保存在ESP中。用来保存临时变量和参数。
    当寄存器不够时,临时变量等都会放入机器栈。机器栈是根据每个函数分开管理的,单个函数调用对应的称之为stack frame,基址指针ebp寄存器总是指向正在执行中的函数栈帧的底部。

    eflags

    eflags寄存器中有

    1. 用于表示运算结果的状态flag,比如发生进位
    2. 用于控制运算的控制flag
    3. 用于控制计算机整体的系统flag
  • 相关阅读:
    CentOS7 虚拟机搭建、初始设置、简单使用
    Oozie-4.0.0-cdh5.3.6搭建
    ionic开发环境搭建
    nodejs+chromium 创建桌面应用程序
    常用mysql笔记
    javascript 操作 css Rule
    javascript正则表达式笔记
    grunt之dev-pro环境切换
    grunt之入门实践
    动态加载js
  • 原文地址:https://www.cnblogs.com/xuesu/p/14382836.html
Copyright © 2011-2022 走看看