● 不同生产商的CPU以及大端/小端对齐

※ ARM、AMD、Atom和intel之间的关系

 

intel公司和AMD公司生产的是相同的x86架构的CPU,这种CPU属于CISC(Complex Instruction Set Computer,复杂指令集计算机)架构。

Atom是intel旗下的一款处理器。

X86架构最早由intel开发,可能为了避免垄断之嫌,也允许AMD公司生产。

 

还有一种CPU属于RISC(Reduced
Instruction
Set
Computer,精简指令集计算机)架构,这就是ARM架构的CPU。

1983年,英国剑桥的ARM 公司的前身Acron公司生产了ARM(Acorn RISC Machine)处理器。

2012年以后,AMD公司正式加入ARM阵营,也开始生产ARM处理器。

 

X86架构和ARM机构的区别:

x86:主要用于PC电脑 功耗高,寿命短,在低端手机上也有使用。

ARM:主要用于手机、平板电脑,功耗低,寿命长。

※ 大端对齐, 小端对齐

1)大端对齐(big-endian):数据的高位放在存储器的低地址处

2)小端对齐(little-endian):数据的低位放在存储器的低地址处

 

例如, 有数据 0x 12345678,共32位,4字节, 大端对齐和小端对齐数据在内存存储的状况如下图所示:

    

对于Intel X86的CPU ,其对齐方式是:小端对齐,即存储器的低地址先放的数据的低位。

而Motorola680x motorola 的CPU,其对齐方式是:大端对齐,存储器的低位存放数据的高位。

不同生产商的CPU以及大端/小端对齐的更多相关文章

  1. 在windows下详解:大端对齐和小端对齐

    计算机的内存最小单位是什么?是BYTE,是字节.一个大于BYTE的数据类型在内存中存放的时候要有先后顺序. 高内存地址放整数的高位,低内存地址放整数的低位,这种方式叫倒着放,术语叫小端对齐.电脑X86 ...

  2. (转)C系程序员面试必知必会之大端小端

      C程序员经常被问及的一道面试题是:什么是大端/小端,怎么样判断是大端/小端?大端小端问题对于嵌入式程序员绝对不会陌生(否则,别告诉我你是搞嵌入式的),它与CPU体系结构有关.比如常见的X86处理器 ...

  3. C中对整数的大端对齐与小端对齐的理解

    示例 /* 大端与小端对齐 说明: 1.对于arm, intel这种x86架构的复杂指令cpu,整数在内存中是 倒着存放的,低地址放低位,高地址放高位,称之为小端对齐 2.对于linux服务器的cpu ...

  4. c# 16进制大端小端解析长度

    //前两个字节为长度的解析string hexstr = "00 13 59 02 80 00 E7 00 80 00 E9 00 80 00 EA 00 80 00 EB 00 80&qu ...

  5. C/C++字节序(大端/小端)判断

    C/C++大端小端判断 说的是变量的高字节.低字节在内存地址中的排放顺序. 变量的高字节放到内存的低地址中(变量的低字节放到内存的高地址中)==>大端 变量的高字节放到内存的高地址中(变量的低字 ...

  6. C++查看大端小端模式

    在学习计算机组成原理的时候,看到大端小端模式,便想实验一下,首先介绍一下 C 中的union,这个平时用得少,估计在单片机这种可能会运用,在平时写代码的时候几乎是用不着union的. union:联合 ...

  7. 大端小端(Big- Endian和Little-Endian)[转]

    原文出处: 字节序(Endian),大端(Big-Endian),小端(Little-Endian)  http://www.cppblog.com/tx7do/archive/2009/01/06/ ...

  8. 大端小端转换,le32_to_cpu 和cpu_to_le32

    字节序 http://oss.org.cn/kernel-book/ldd3/ch11s04.html 小心不要假设字节序. PC 存储多字节值是低字节为先(小端为先, 因此是小端), 一些高级的平台 ...

  9. java的大端小端和c#如何对应

    当前的存储器,多以byte为访问的最小单元,当一个逻辑上的地址必须分割为物理上的若干单元时就存在了先放谁后放谁的问题,于是端(endian)的问题应运而生了,对于不同的存储方法,就有大端(big-en ...

随机推荐

  1. Go语言学习之2 包、函数、常量、数据类型、字符操作

    第一部分:基本数据类型和操作符 1. 文件名&关键字&标识符 (1)所有go源码以.go结尾    (2)标识符以字母或下划线开头,大小写敏感,比如: a. boy     b. Bo ...

  2. 扩大了一个逻辑卷,resize2fs 保错:没有这个超级块

    检查发现,文件系统类型是xfs,应该使用 xfs_growfs命令刷新文件系统

  3. 亚马逊商品页面的简单爬取 --Pyhon网络爬虫与信息获取

    1.亚马逊商品页面链接地址(本次要爬取的页面url) https://www.amazon.cn/dp/B07BSLQ65P/ 2.代码部分 import requestsurl = "ht ...

  4. webpack基础概念

    中文文档:https://webpack.docschina.org/concepts/ 一个现代 JavaScript 应用程序的静态模块打包器(static module bundler). 在 ...

  5. 架构探险笔记3-搭建轻量级Java web框架

    MVC(Model-View-Controller,模型-视图-控制器)是一种常见的设计模式,可以使用这个模式将应用程序进行解耦. 上一章我们使用Servlet来充当MVC模式中的Controller ...

  6. Spring Boot常用注解

    SpringBoot注解大全   一.注解(annotations)列表 @SpringBootApplication:包含了@ComponentScan.@Configuration和@Enable ...

  7. CSS Hack 技巧

    IE Hack IE系列浏览器的hack大略如下: _nowamagic:1px;———–ie6 *nowamagic:1px;———–ie7 nowamagic:1px\0;———-ie89 now ...

  8. ORA-04068 / ORA-04065 / ORA-06508 详细说明

    关于在运行ORACLE 包发生ORA-04068 / ORA-04065 / ORA-06508 代码异常的原因只有一个,那就是包含了全局变量/常量的包,在会话保留期间被执行了编译. 对于此类错误,我 ...

  9. MapReduce分布式算法

    一.MapReduce 有一种特殊的并行算法,就是分布式算法.在并行算法只需要两个到四个内核时,完全可以在笔记本电脑上运行,但是如果需要数百个内核,这种情况下,可让算法在多台计算机上运行. 假设你有一 ...

  10. JAVA 两个对象不同为什么他们的hashcode有可能相同

    hashCode是所有java对象的固有方法,如果不重载的话,返回的实际上是该对象在jvm的堆上的内存地址,而不同对象的内存地址肯定不同,所以这个hashCode也就肯定不同了.如果重载了的话,由于采 ...