• 系统架构X86、X86_64、X64的区别


    X86是指intel公司开发的一种32位指令集;从386时代开始,一直沿用至今。所以早期的intel与amd都支持X86架构,intel官方称这种指令集为“IA-32”

    X86_64是X86 架构迈向X64架构的时候;它有两种指令选择:1、向下兼容X86。2、完全重新设置指令集,不兼容X86。AMD抢跑了,比intel率先制造出了商用的兼容X86的CPU,AMD称之为AMD64,抢了intel 64位PC的第一桶金,得到了用户的认可。而intel选择了设计一种不兼容X86的全新64位指令集,称之为IA-64(也就是所谓的安腾),但是比AMD晚了一步,而IA-64也挺惨的,因为是全新设计的CPU,没有编译器,也不支持windows(微软把intel忽悠了,承诺了会出安腾版的windows server版,但是一直没拿出来),后来不得不在时机落后的情况下,开始支持AMD64指令集,但是换了个名字,叫X86_64,表示X86指令集的64位扩展,大概是不愿意承认这个东西是AMD设计出来的。

    X86_64与X64都是讲的同一个东西,我们现在用的intel/amd的桌面级CPU基本都是X86_64,与之相对的arm、ppc等都不是X86_64.

    X64其实就是X32的指令集的扩展,X86中只有8个32位通用寄存器,eax、ebx、ecx、edx、ebp、esp、edi。X86_64将八个寄存器扩展成了64位的,并且将寄存器数目扩大,变成了16个寄存器。同样的寄存器的位数和数目都进行了扩展,此外CPU扩展到64位后,也能支持更多的内存等多好处。

  • 相关阅读:
    Android调用WebService
    webKit和chromium的文章地址
    关注web前端
    第三次面向对象程序设计作业
    第二次面向对象程序设计作业
    面向对象程序作业一
    HashMap的存储原理
    关于MySql中使用IFNULL()函数失效的问题。
    利用反射操作bean的属性和方法
    几种String对象方法的区别
  • 原文地址:https://www.cnblogs.com/guge-94/p/11289470.html
Copyright © 2020-2023  润新知