x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,ntel官方文档里面称为“IA-32”

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

也就是说实际上,x86_64,x64,AMD64基本上是同一个东西,我们现在用的intel/amd的桌面级CPU基本上都是x86_64,与之相对的arm,ppc等都不是x86_64。

x86、x86_64主要的区别就是32位和64位的问题,x86中只有8个32位通用寄存器,eax,ebx,ecx,edx, ebp, esp, esi, edi。x86_64把这8个通用寄存器扩展成了64位的,并且比x86增加了若干个寄存器(好像增加了8个,变成了总共16个通用寄存器)。同样的MMX的寄存器的位数和数量也进行了扩展。此外cpu扩展到64位后也能支持更多的内存了,等等许多好处。

对于普通程序来说,CPU位数的扩展、寄存器数量的增加不会带来明显的性能提升,比如IE浏览器、Office办公这类的软件。特定的程序很能够充分利用64位CPU、更多的寄存器带来的优势,比如MMX除了能提升多媒体程序的性能,对矩阵、多项式、向量计算都能带来提升,更多的MMX寄存器、更大的寄存器字长都有利于SIMD指令的执行,能够提升CPU对数据的吞吐量(RISC指令集的CPU动不动就有数百个寄存器,可以有效的缓存中间计算结果,不需要把中间结果写入内存,从而减少内存访问次数,显著提升性能)

mysql x86 x64_X86和X86_64和X64有什么区别?相关推荐

  1. x64、x86_64、x64、AMD64

    x64.x86_64.x64.AMD64 X86系列及兼容CPU IA-32 Architecture Intel® 64 Architecture IA-64 Architecture 其他 Vis ...

  2. 模块XXXX可能与您正在运行的Windows版本不兼容。检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容。

    最近自己在编写ActiveX控件.遇到的麻烦事不少. 今天遇到了这个问题"模块XXXX可能与您正在运行的Windows版本不兼容.检查该模块是否与regsvr32.exe的x86(32位)x ...

  3. mysql declare与set的区别_浅谈MySQL存储过程中declare和set定义变量的区别

    在存储过程中常看到declare定义的变量和@set定义的变量.简单的来说,declare定义的类似是局部变量,@set定义的类似全局变量. 1.declare定义的变量类似java类中的局部变量,仅 ...

  4. MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)

    MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测) 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过 ...

  5. Mysql存储引擎详解(MyISAM与InnoDB的区别)

    Mysql存储引擎详解(MyISAM与InnoDB的区别) 存储引擎     MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平 ...

  6. 数据库系列之mysql 自定义函数function,函数和存储过程的区别

    mysql 自定义函数function,函数和存储过程的区别 https://blog.csdn.net/u010365819/article/details/80470448 https://blo ...

  7. php 如何设计索引_Mysql学习浅谈mysql的索引设计原则以及常见索引的区别

    <Mysql学习浅谈mysql的索引设计原则以及常见索引的区别>要点: 本文介绍了Mysql学习浅谈mysql的索引设计原则以及常见索引的区别,希望对您有用.如果有疑问,可以联系我们. 索 ...

  8. mysql中双引号和单引号有什么区别

    mysql中双引号和单引号有什么区别 前2天看到有人问,mysql中双引号和单引号有什么区别? 希望大家可以关注下公众号,支持一下,鞠躬感谢~ 我就直接po代码和截图了,如下 select * fro ...

  9. mysql存储过程set什么意思_浅谈MySQL存储过程中declare和set定义变量的区别

    在存储过程中常看到declare定义的变量和@set定义的变量.简单的来说,declare定义的类似是局部变量,@set定义的类似全局变量. 1.declare定义的变量类似java类中的局部变量,仅 ...

  10. MySql 执行count(1)、count(*) 与 count(列名) 区别

    MySql 执行count(1).count(*) 与 count(列名) 区别 1. 初识 count COUNT(expr) ,返回 SELECT 语句检索的行中 expr 的值不为NULL的数量 ...

最新文章

  1. 女程序猿2014总结(修改)
  2. 《精通自动化测试框架设计》—第2章 2.3节测试数据交互基本方法
  3. MySQL5.6多实例部署
  4. java对docker_Java和Docker限制问题
  5. mysql5.6数据库位置_MYSQL5.6数据库存放位置
  6. centos 下载文件很慢_【已解决】Mac中从远程CentOS服务器中加速下载大文件
  7. keras核心已转储_转储Keras-ImageDataGenerator。 开始使用TensorFlow-tf.data(第2部分)
  8. englishpod主持人对话文本_Englishpod 23 | 主持人文本讲解
  9. 女魔头VS小奶狗,男女主拿错剧本!仙侠爽剧《招摇》今晚安排
  10. 采用DCT进行图像压缩
  11. django 指令  基于the django book
  12. Python+opencv图片合成视频
  13. 中文编码之GB2312,Big5,GBK简介
  14. 随手写程序-t检验计算置信区间
  15. 青岛大学计算机考研好考么,青岛大学考研难吗?一般要什么水平才可以进入?...
  16. MATLAB:randn简介
  17. 6plus经常显示无服务器,苹果6plus屏幕失灵怎么办?如何解决?
  18. 第十三届蓝桥杯嵌入式备赛-STM32G431-基础模块调试①LED/LCD调试
  19. opa学习1--开发环境搭建
  20. mp2 解码器kjmp输出32bit

热门文章

  1. Android读取不到/storage/emulated/0/文件的问题
  2. 《团队-科学计算器-项目总结》
  3. solidworks属性管理器_SolidWorks自定义属性——属性标签编制程序
  4. 屌炸天,像写代码一样写PPT,reveal-md 详解
  5. css用网络图片做背景图片,网络编程css为图片设置背景图片
  6. Linux查看mpp数据库地址,linux下打开.mpp文件(微软project)._操作系统_rainysia的专栏-CSDN博客...
  7. Kinect for Windows SDK开发入门(五):景深数据处理 下
  8. 产品经理为什么比程序员工资要高?百度员工:因为他是产品灵魂
  9. JS验证邮箱 身份证 VISA 卡[转]
  10. 服务器开机日志文件,大芒果启动WOW服务器 提示日志文件找不到怎么办