2023-5-17-CPU架构学习(amd、ard等)

news2024/12/28 19:04:29


🍿*★,°*:.☆( ̄▽ ̄)/$:*.°★* 🍿

💥💥💥欢迎来到🤞汤姆🤞的csdn博文💥💥💥
💟💟喜欢的朋友可以关注一下,下次更新不迷路💟💟
😆😆😆私聊获取个人订阅号哦,欢迎订阅共同学习😆😆😆
💖💖💖💖可以加入大家庭群聊,一起学习天天有福利💖💖💖💖





🍬本文摘要

在这里插入图片描述

最近在学习过程中接触到了不同的跨平台编程,包括程序32位和64位的不同,包括amd64到ard64不同的硬件系统,有点晕,得补补课学习一下。


目录

  • 🍬本文摘要
  • 😉一、CPU架构是什么
  • 🐱‍🐉二、CISC和RICS的优缺点
  • 🎉三、CPU架构的分类
  • 🐱‍🚀四、x86架构
  • 🎂五、x64架构
  • 🥩六、ARM
  • 🍚七、PowerPC
  • 🥠八、MIPS
  • 🍤九、SPARC
  • 🥚十、IA-64
  • 🥡十一、为什么在64位的电脑上能编译32位程序
  • 🌯十二、arm架构分为几种
  • 🥫十三、arm架构有32位系统吗
  • 🥫十三、arm64和amd64的区别
  • 🥫十三、不用的处理器架构的市场份额的变化以及未来的发展预测
  • 🍳参考文献
  • 🧊文章总结



😉一、CPU架构是什么

CPU架构和处理器架构是相同的概念,它们都指的是中央处理器的结构和设计。CPU架构通常是指基于指令集的架构,例如x86、ARM或MIPS等。而处理器架构则更广泛,可以包括诸如硬件组件、总线结构和内存管理等方面的内容。

CPU架构指的是一种计算机处理器的设计,包括其指令集、寄存器、数据类型和内存访问方式等方面。不同的处理器架构具有不同的特点和优劣势,如运行速度、能耗、成本等方面的差异。

CPU架构可以分为两种主要类型:基于复杂指令集(CISC)的处理器和基于精简指令集(RISC)的处理器。CISC 处理器使用复杂的指令来完成多个任务,而 RISC 处理器则使用更简单的指令来提高效率和性能。除此之外,还有其他类型的处理器架构,如向量处理器、超标量处理器等。

CPU架构直接影响到计算机系统的性能和功能,因此在选择计算机硬件、开发软件或进行编译时需要考虑CPU架构的适用性。


🐱‍🐉二、CISC和RICS的优缺点

基于复杂指令集(CISC)的处理器和基于精简指令集(RISC)的处理器各有其优缺点,具体如下:

CISC 处理器的优点:

  • 能够执行复杂的指令,从而减少编写程序所需的代码量;
  • 支持多种不同的数据类型和操作,包括浮点运算、位运算等;
  • 提供了硬件支持的流程控制语句,如条件分支、循环等;
  • 可以直接访问内存中的数据,从而提高了访问速度。

CISC 处理器的缺点:

  • 指令长度较长,需要更多的存储空间;
  • 复杂的指令需要更长的执行时间,导致整体性能下降;
  • 由于指令复杂,设计和生产成本更高;
  • 复杂的指令集使其难以进行流水线处理,从而限制了性能的提升。

RISC 处理器的优点:

  • 采用较短的指令,可以在相同的字长情况下执行更多的指令,从而提高效率;
  • 精简的指令集可以降低设计和生产成本,同时易于实现流水线处理,从而进一步提高性能;
  • 采用相同的指令格式,可以更容易地进行编译和优化;
  • 精简指令集使得处理器更加易于设计和实现。

RISC 处理器的缺点:

  • 对于复杂的运算和操作,需要使用多个指令,从而增加了编写程序所需的代码量;
  • 不支持一些高级操作,如除法、开方等;
  • 无法直接访问内存中的数据,需要通过寄存器来传递数据;
  • 受到存储器带宽限制,对于大量内存访问的应用场景,性能会有所下降。

***、

🎉三、CPU架构的分类

CPU 架构可以分为多种,以下是一些常见的 CPU 架构:

  1. x86:一般用于 32 位操作系统和应用程序,支持最多 4GB 内存寻址。

  2. x64(也称为 AMD64 或 Intel 64):一般用于 64 位操作系统和应用程序,支持更大的内存寻址空间和更高的性能。

  3. ARM:主要用于移动设备和嵌入式系统,有多个不同版本的 ARM 架构,如 ARMv7、ARMv8 等。

  4. PowerPC:用于 IBM 的服务器和高性能计算领域。

  5. MIPS:用于路由器、嵌入式系统等领域。

  6. SPARC:用于 Sun Microsystems 的服务器和工作站。

  7. IA-64 (Itanium):Intel 推出的高性能 CPU 架构,主要用于大型企业服务器。

不同的 CPU 架构具有不同的指令集和寄存器组,因此代码需要根据不同的架构进行编译。在软件开发过程中,需要考虑目标平台的 CPU 架构,并编写相应的代码和编译选项。


🐱‍🚀四、x86架构

x86是一种CPU架构,最初由英特尔公司于1978年推出。该架构在个人计算机和服务器领域广泛使用。x86架构的指令集包括了大量的操作码,这些操作码可以用来进行各种运算、访问内存、控制程序流等操作。

x86架构最初只有16位,但在后来的发展过程中,它逐渐增加了32位和64位的支持。其中,32位版本被称为IA-32,也叫x86-32或i386;64位版本被称为x86-64或AMD64。这些扩展使得x86架构更加灵活,并支持了更多的内存和更高效的指令处理能力。

除了英特尔之外,其他公司如AMD和VIA也推出了基于x86架构的处理器。此外,x86架构还广泛应用于虚拟化技术和云计算等领域。总的来说,x86架构已经成为计算机历史上最为成功的CPU架构之一,也是当前PC和服务器市场上的主流架构之一。


🎂五、x64架构

x64,也称为x86-64或AMD64,是一种CPU架构的扩展,支持64位操作系统和应用程序。它是x86架构的一种扩展,由AMD公司于2003年推出。

相对于32位x86架构,x64架构有以下优势:

1.更大的内存寻址空间:x86架构最多只能寻址4GB的内存,而x64架构可以寻址的内存空间高达18EB(即18亿GB),使得计算机可以处理更大、更复杂的任务。

2.更高的性能:x64架构具有更广泛的寄存器集和指令集,能够更好地支持并行运算和向量化操作,从而提高了处理器的性能。

3.更好的安全性:x64架构的硬件虚拟化技术能够提供更好的安全隔离和保护,同时还支持更强大的数据加密和解密功能,确保用户数据的安全性和机密性。

目前,大多数桌面和服务器处理器都支持x64架构,并且主流操作系统和应用程序也都已经逐步迁移到了64位架构上。因此,x64架构已经成为了计算机领域中不可或缺的重要组成部分之一。


🥩六、ARM

ARM(Advanced RISC Machine)是一种基于精简指令集体系结构(RISC)的计算机处理器架构。它由ARM Holdings公司开发,广泛用于移动设备、嵌入式系统和其他低功耗应用中。

ARM架构具有能够在相同或更低功率消耗下提供更高性能的特点。这是通过采用流水线技术、分支预测以及其他优化技术来实现的。ARM还具有可扩展性,可以在不同应用场景下使用多种不同的配置和规格。

由于其低功耗和高性能的特点,ARM处理器被广泛用于智能手机、平板电脑、数字音频播放器、路由器、网络交换机、数字相机、数字电视、游戏控制台等嵌入式设备。此外,ARM还逐渐进入到桌面计算机和服务器市场,并成为了新一代超级计算机的基础。


🍚七、PowerPC

PowerPC(Performance Optimization With Enhanced RISC – Performance Computing)是一种基于精简指令集计算机处理器架构,最初由IBM、Apple和Motorola合作开发。它旨在提供高性能、低功耗和可扩展性,并广泛用于桌面计算机、服务器和嵌入式系统中。

相比于其他RISC架构,PowerPC具有更强的浮点运算能力和向量处理能力,这使得它在科学计算、数字信号处理、图像处理等领域表现出色。

PowerPC还具有多核心和对SIMD(单指令多数据)扩展的支持,可以通过对称多处理(SMP)和非一致性存储访问(NUMA)技术来实现高效的并行计算和内存管理。

尽管PowerPC曾经在桌面计算机市场上与x86架构竞争过,但由于其市场份额逐渐减少,目前主要应用在服务器、网络设备、工业控制和嵌入式系统等领域。其中,IBM Power架构被广泛应用于企业级服务器和超级计算机领域。


🥠八、MIPS

MIPS(Microprocessor without Interlocked Pipeline Stages)是一种基于精简指令集计算机处理器架构,最初由斯坦福大学的研究人员开发。其主要特点是高效、快速和可扩展。

MIPS架构采用流水线技术和延迟槽等优化技术,可以实现高效的指令处理和高性能的运算能力。同时,MIPS还支持多核心、超标量和超线程等技术,可以充分发挥硬件资源的性能优势,提高系统的并行处理能力。

除了在桌面计算机、服务器和工业控制等领域得到广泛应用之外,MIPS处理器还被广泛应用于嵌入式系统中,如路由器、数字电视和智能手机等。此外,MIPS还被广泛应用于物联网(IoT)领域,因为它具有低功耗、小尺寸、高性能、安全性强等优点。

近年来,MIPS已经成为了中国的国产处理器架构,大量被应用于我国的信息通信领域以及智能制造、智慧城市等领域的终端设备。


🍤九、SPARC

SPARC(Scalable Processor ARChitecture)是一种基于精简指令集计算机处理器架构,最初由Sun Microsystems公司开发。它的设计目标是提供高性能、可扩展性和灵活性,并广泛应用于服务器、工作站和嵌入式系统中。

SPARC架构采用乱序执行技术、分支预测和超标量处理等优化技术,可以实现高效的指令处理和高性能的运算能力。同时,SPARC还支持多线程技术,可以充分发挥硬件资源的性能优势,提高系统的并行处理能力。

除了在服务器和工作站领域得到广泛应用之外,SPARC处理器还被广泛应用于嵌入式系统中,如路由器、交换机、智能电网和智能交通等。此外,SPARC还被广泛应用于高性能计算和科学计算领域,如天气预报、气候模拟、分子动力学等。

随着Oracle公司收购Sun Microsystems,SPARC架构逐渐成为了Oracle公司的重要产品线之一。目前,Oracle SPARC处理器已经成为了企业级服务器领域的主流产品之一,在金融、电信、公共事业和政府等领域得到广泛应用。


🥚十、IA-64

IA-64(Intel Architecture 64)是一种基于精简指令集计算机处理器架构,由英特尔公司和惠普公司联合开发。它的设计目标是提供高性能、可扩展性和灵活性,并广泛应用于服务器和工作站等高端计算领域。

IA-64架构采用了EPIC(Explicitly Parallel Instruction Computing)执行模型,将编译器、CPU 和操作系统紧密地结合在一起,实现了高效的指令流水线和高性能的并行处理能力。同时,IA-64还支持高速缓存、多核心、超线程和可靠性、可用性、可维护性等特征,可以满足高端计算领域对可靠性和可用性的要求。

尽管IA-64曾经在高端计算领域得到了广泛应用,但它并没有取代x86架构,因为它需要使用专门为IA-64架构编写的应用程序,而大多数应用程序是为x86架构编写的,这使得IA-64成本昂贵且应用范围有限。

由于IA-64的市场份额逐渐减少,英特尔公司已经停止了IA-64的生产,并逐渐将其改变方向,将资源投入到其他架构的发展中。


🥡十一、为什么在64位的电脑上能编译32位程序


在64位的电脑上能编译32位程序,是因为现代计算机处理器支持向下兼容。具体来说,64位的处理器内部包含了一个32位的子系统,可以运行和处理32位的指令和数据。

当我们在64位的操作系统上安装了32位的编译器时,它会生成32位的目标文件,使用32位的指令集和API(应用程序接口),并链接到32位的库。这些库可以在64位环境中使用,因为它们同样可以被加载到32位的子系统中并执行。

需要注意的是,虽然64位的CPU可以运行32位程序,但是反过来并不一定成立64位程序通常需要更多的内存和更强的计算能力,而32位的子系统只能访问有限的内存空间和资源,因此无法完全发挥64位CPU的优势。


🌯十二、arm架构分为几种

ARM架构分为三种:

  1. ARMv6及以下:这是最早的ARM架构,适用于低功耗和低成本的应用。它具有较小的指令集和功能,运行在单核处理器上,并且主要用于嵌入式系统和移动设备。

  2. ARMv7:这是第二代ARM架构,支持更广泛的应用场景。该架构包含了多种规格和配置,可以运行在单核或多核处理器上,支持更高的时钟频率和更高的性能。ARMv7还引入了虚拟化、NEON SIMD(单指令多数据)扩展和可选的硬件安全扩展等功能。

  3. ARMv8及以上:这是目前最新的ARM架构,也称为ARM64或AArch64。ARMv8架构采用了64位设计,具有更大的地址空间和更高的内存容量。此外,ARMv8还引入了新的指令集和硬件特性,如指令突发(instruction pipelining)、更先进的分支预测、向量寄存器和加密扩展等,从而提供更高的性能和更好的安全性。ARMv8架构主要用于服务器、高端手机、平板电脑、超级计算机等领域。


🥫十三、arm架构有32位系统吗

是的,ARM架构有32位系统。实际上,大多数ARM处理器都是32位的,包括早期的ARMv6及以下版本和中期的ARMv7版本。

即使在目前最新的ARMv8架构中,也同时支持64位和32位模式。在32位模式下,它可以运行现有的32位应用程序,并且兼容已有的32位操作系统和库。这种兼容性对于嵌入式系统和移动设备等低功耗应用非常重要,因为它可以保证平滑的升级过程和无缝的软件兼容性。

需要注意的是,虽然ARMv8架构同时支持64位和32位模式,但在64位模式下,它可以提供更高的性能和更大的内存寻址能力,适用于需要处理大数据量和需要更高计算性能的应用领域。


🥫十三、arm64和amd64的区别

ARM64和AMD64(也称为x86-64或Intel 64)是两种不同的处理器架构,有以下几个方面的区别:

  1. 指令集:ARM64采用了全新的AArch64指令集,而AMD64则是在x86指令集基础上扩展的64位指令集。

  2. 寄存器:ARM64和AMD64都拥有更多的寄存器,但是ARM64的寄存器宽度和规格更加统一,并且支持向量寄存器,可以提供更好的并行计算能力。

  3. 内存寻址:ARM64和AMD64的内存寻址方式不同。ARM64使用相对寻址方式,这意味着程序可以使用相对地址访问存储器,因此可以节省指令码的长度和内存带宽。而AMD64使用绝对寻址方式,需要在指令中包含完整的地址信息。

  4. 应用领域:ARM64主要用于移动设备、智能手机、平板电脑、嵌入式系统、服务器等领域,而AMD64主要用于桌面计算机、企业服务器和工作站等领域。

总体来说,ARM64和AMD64具有各自的特点和优势,适用于不同的应用场景。为了编写和运行在这些平台上的软件,程序员需要编写不同的指令集和体系结构相关代码。


🥫十三、不用的处理器架构的市场份额的变化以及未来的发展预测

处理器架构的市场份额变化情况和未来的发展预测:

  1. x86架构:x86架构是目前桌面计算机和服务器领域的主流架构,其市场份额稳定并保持着高水平。预计随着人工智能、云计算等领域的需求增加,x86架构仍将继续保持其领先地位。

  2. ARM架构:ARM架构主要应用于移动设备、嵌入式系统和物联网等领域。由于这些领域的需求不断增长,ARM架构预计将继续保持增长势头,并有望在新兴市场中占据更大的份额。

  3. PowerPC架构:PowerPC架构曾经在超级计算机和企业级服务器领域具有一定的市场份额,但目前已经逐渐减少。未来,PowerPC架构可能会在工业控制、网络设备和物联网等领域得到应用。

  4. MIPS架构:MIPS架构广泛应用于嵌入式系统和物联网领域。由于这些领域的需求不断增长,MIPS架构预计将继续保持增长势头。

总体来说,市场份额的变化取决于各种因素,如技术发展、应用需求、成本和竞争等。随着新兴领域的不断涌现和需求的不断增加,处理器架构市场仍将保持活跃,而且未来还会出现新的架构和技术。


🍳参考文献

🧊文章总结

提示:这里对文章进行总结:

  本文讲了不同处理器架构是什么,它们之间的不同点是什么,应用领域是什么,未来的发展趋势是什么。






更多好文推荐

🍸2023-4-6-C++11、C++14、C++17、C++20版本新特性系统全面的学习!!!(全面准确,建议关注收藏订阅专栏)
🍹2023-5-4-Lua语言学习
🍺2022-10-31-基于用户的协同过滤推荐算法实现+MAE+RMSE
🍻2022-11-28-大数据可视化,特征维度大于50
🥂2023-3-9-一篇简短的文章把C++左右值关系讲的透透彻彻

上一篇
End
下一篇

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/543469.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis高可用性详解

目录 ​编辑 高可用性: 主从复制(Master-Slave Replication): 主从复制的一般工作流程: 哨兵模式(Sentinel Mode): 哨兵模式的一般工作流程: 集群模式&#xff08…

【大数据学习篇7】 热门品类Top10分析

在HBase命令行工具中执行“list”命令,查看HBase数据库中的所有数据表。学习目标/Target 掌握热门品类Top10分析实现思路 掌握如何创建Spark连接并读取数据集 掌握利用Spark获取业务数据 掌握利用Spark统计品类的行为类型 掌握利用Spark过滤品类的行为类型 掌握利用…

梯度消失和爆炸问题

一、为什么会产生梯度消失和梯度爆炸? 目前优化神经网络的方法都是基于BP,即根据损失函数计算的误差通过梯度反向传播的方式,指导深度网络权值的更新优化。其中将误差从末层往前传递的过程需要链式法则(Chain Rule)的…

自定义mysql函数之字符串逗号分割查询(find_in_set)

增强 find_in_set() 在mysql中,我们有时候设计数据库某个字段需要通过逗号进行分割,然后根据传入的字符串查询是否存在的方法进行判断,mysql默认的 find_in_set() 可以对比某个逗号分割的字符串中是否存在指定字符串,例如下面的例…

小程序技术,打开跨端管理的思路,提高客户满意度和忠诚度

小程序容器作为跨端管理的有效工具,已经成为越来越多企业的选择。通过小程序容器,企业可以实现跨平台部署,提供一致的用户体验,整合多种渠道实现全渠道协同,进行个性化营销,以及通过数据分析和监控等手段优…

手把手教你,用Auto-GPT自动写个网站(保姆级)

目录 一、什么是 Auto-GPT 二、用Auto-GPT自动给我实现了一个网站 1、运行过程 2、执行任务 3、运行结果 三、如何安装使用?怎么玩 1、注册OpenAI的账号,并获取key 2、下载Git和Python3(无脑安装) 3、克隆仓库到本地 4、…

【SVN】SVN常用操作

1、svn客户端安装 下载地址:https://tortoisesvn.net/downloads.zh.html 下SVN客户端及汉化包 (根据提示安装即可) 2、检查是否安装成功 在空白处,右键,可见TortoiseSVN,如下图所示 3、检出&#xff…

React Antd Typescript开发碰到的问题 DatePicker Radio should update 后端数据回显

需求: DatePicker控件 离职人员默认显示后端传过来的离职时间 有两种类型页面,编辑时可操作,详情时不可操作 进入编辑页面时,状态切换成在职时,清空离职时间框且离职时间框不可用,字段设置为 undefined 状态…

国际top5功能完善在线投资平台app软件最新排名(综合评测)

如今,随着科技的发展,越来越多的人选择使用在线投资app软件来进行投资。但是面对众多的选择,选择一款靠谱的在线投资app软件是非常重要的。首先,我们需要考虑该软件的安全性。投资是一项涉及资金的活动,因此&#xff0…

高精度示波器keysight是德DSOS054、MSOS054销售回收

安捷伦Keysight DSOS054A MSOS054 500MHZ高清晰度示波器 特征: 带宽:500 MHz,具有平坦的频率响应,可实现高信号保真度 频道:4 最大存储深度:800 Mpts(2 通道),400 Mpt…

新工匠精神是啥

给工匠精神加入新的“工程师”文化 工程化是现代制造的内核 工程师是工程文化的承载人 趣讲大白话:新工匠精神,新在哪里? 【趣讲信息科技170期】 **************************** 工程师文化起源于硅谷 传承工匠精神的,也要加入工程…

本科生高薪专业top10,全被计算机承包了

在每年被唱衰的行业里,即使如高薪神话的IT行业,也难逃此“劫”——IT不行了!疲软了!现在再入行IT和计算机就是坑! 然而事实上,根据最新数据报告显示,2022届本科毕业生毕业半年后月收入排前10位的…

Linux|minio对象存储服务的部署和初步使用总结

前言: minio是一个非常轻量化的对象存储服务,是可以算到云原生领域的。 该服务是使用go语言编写的,因此,主文件就一个文件,它的下载,部署什么的都是非常简单的,一般两三步就可以搭建好了&…

Word控件Spire.Doc 【文本框】教程(6):如何在文本框中设置文本方向

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

腾讯的这道公益「微光」,竟已燎原了

台上开发者们的陆续发言,瞬间把我带到了公益的海洋中。谁都不愿放弃追随那道光,那道热爱公益的光,那道为了解决弱势群体难题与时俱进的光,那道为了文化传承的创新之光。这就是第三届Light•技术公益创造营项目路演现场带给我的直观…

若依框架语言国际化操作流程?

国际化是指将产品、服务、企业或组织的活动适应不同国家、不同文化背景和不同语言环境的过程。它包括将产品或服务适应不同的市场需求、文化习惯和法律法规等方面的工作。国际化的目的是拓展企业或组织的市场,提高竞争力和盈利能力。 目录 一、前端国际化流程 1、html使用…

Gradle接入checkstyle代码风格检查插件

一、什么是checkstyle 在项目开发的过程中,代码规范是经常被提起的话题,特别是当项目需要多个开发协同完成的时候,良好统一的代码规范能够在一定程度上保证项目代码的质量和团队的开发效率。目前业界常见代码检查工具有 Alibaba Java Coding…

二分查找的总结

一、二分查找 1.思路分析 这道题目的前提是数组为有序数组,同时题目还强调数组中无重复元素,因为一旦有重复元素,使用二分查找法返回的元素下标可能不是唯一的,这些都是使用二分法的前提条件,当大家看到题目描述满足如…

Ampere Computing 发布全新 AmpereOne 系列处理器,192 个自研核

2023 年 5 月 19 日,中国北京——Ampere Computing 宣布推出全新 AmpereOne™ 系列处理器,该处理器拥有多达 192 个单线程 Ampere 核,内核数量为业界最高。这是第一款基于 Ampere 新自研核的产品,由 Ampere 自有 IP 全新打造。 致…

chatgpt赋能Python-python3_6怎么打开

Python 3.6:新时代的编程语言 Python 3.6是一种全新的编程语言版本,它提供了全新的功能和改进,使得编程过程更加简便且实用。无论你是编程新手还是老手,本文将教你如何打开Python 3.6,并带你了解Python 3.6的优点。 …