精华内容
下载资源
问答
  • CPU位数,寻址能力,指令集,寄存器位数,操作系统位数
    千次阅读
    2017-03-03 15:39:45

    part 1

    CPU位数 = CPU中寄存器的位数 = CPU能够一次并行处理的数据宽度 = 数据总线宽度

    操作系统位数 = 其所依赖的指令集位数 <= CPU位数

    CPU寻址能力 = 2^S (s为地址总线宽度) <= CPU位数

    chenqi@chenqi-OptiPlex-760:/$ cat /proc/cpuinfo | grep -i address
    address sizes    : 36 bits physical, 48 bits virtual
    表示物理内存寻址64G,虚拟内存寻址256T. (就是说,内存超过64G的部分也没什么用,硬盘超过256T的部分也没用)

    Linux下查看系统位数:

    chenqi@chenqi-OptiPlex-760:/$ getconf LONG_BIT 
    64
    chenqi@chenqi-OptiPlex-760:/$ getconf WORD_BIT
    32
    上述信息显示这个系统时64位系统。

    Linux下查看CPU硬件架构

    chenqi@chenqi-OptiPlex-760:/$ arch
    x86_64
    chenqi@chenqi-OptiPlex-760:/$ uname -m
    x86_64
    chenqi@chenqi-OptiPlex-760:/$ echo $HOSTTYPE
    x86_64

    part 2

    http://en.wikipedia.org/wiki/X86-64

    http://blog.csdn.net/wyzxg/article/details/5027738

    http://blog.csdn.net/ray_zhang_3/article/details/5447140

    1. 现在的 Intel 和 AMD CISC处理器的内核其实都是 RISC内核,是在内核的外围电路中把复杂指令动态翻译成精简指令,然后送到 RISC内核中处理。严格来说,现代CPU本质上都是 RISC处理器。

    2. IA-32(即x86-32)、x86-64都属于x86,即英特尔的32位x86架构

    3. x86-64是AMD在其最新的Athlon 64处理器系列中采用的新架构,但这一处理器基础架构还是IA-32,在IA-32架构基础之上作了一些扩展,以支持64位程序的应用,进一步提高处理器的运算性能。最大的优点就是可以全面兼容以前的32位x86架构的应用程序

    4. x86 又叫 IA32,即 Intel Architecture 32(Intel32位架构)

    更多相关内容
  • 提问如后者的考生思维方式基本都是在算寻址范围时马上将数据线的位数算进去。 其实按字节寻址时和数据线没有任何关系 (仅当按字寻址时才考虑数据线,通过数据线来判断字长),只和地址线有关。 下面通过实例进行...

    寻址范围的概念怎么理解?

    例如,地址线20根,数据线16根,按字节寻址为什么是1MB,而不是2MB?

    按字寻址为什么是512KB,而不是1MB?

    提问如后者的考生思维方式基本都是在算寻址范围时马上将数据线的位数算进去。

    其实按字节寻址时和数据线没有任何关系

    (仅当按字寻址时才考虑数据线,通过数据线来判断字长),只和地址线有关。

    处理机字长是指处理机能同时处理(或运算)的位数,即同时处理多少位(bit)数据。处理器的字长越大,说明它的运算能力越强。比如我们的笔记本电脑,现在一般都是64位的电脑,这也就是说我们的电脑一次可以处理8个字节。

    如果讲处理器的寻址范围,则要看处理器的地址总线的位数,而不是它的字长!目前主流的64位处理器的数据总线为64位,地址总线大部分是32位,这也就是为什么有些人称现在的64位笔记本是伪64位电脑一说的来源。

    再看地址总线与寻址范围的关系。存储单元是以字节(byte)为单位,N根地址总线能访问2的N次方个存储单元。于是有32位地址总线可以访问2的32次方个存储单元,即4GB。 8086处理器字长是16位,它的地址总线是20位,所以能访问2的20次方个存储单元,即1MB。另外一点需要注意的就是,如果有些题目说:按“字”寻址,就说明是存储单元大小为字长的位数,按“字节”寻址,说明存储单元是字节的大小。

    CPU的最大寻址范围:寻找的地址是内存单元的地址。
    比如:一个地址总线由6根地址线组成,那么他的地址线的最大寻址范围是2的6次方,也就是64个内存单元。超出了这个范围的内存单元则访问不到,需要增加地址线才可以访问的到。

    地址总线宽度决定了CPU可以访问的物理地址空间,简单地说就是CPU到底能够使用多大容量的内存。

    数据总线负责整个系统的数据流量的大小,而数据总线宽度则决定了CPU与二级高速缓存、内存以及输入/输出设备之间一次数据传输的信息量。

    下面通过实例进行讲解。

    一般求寻址范围有两种题型。

    1)直接给出存储器的容量和字长,然后按字节、半字、字、双字寻址。

    2)不给出存储器的容量,只给出地址线和数据线的位数。

    【例1-2】假设CPU有20根地址线和32根数据线,试问按字节和字寻址,寻址范围分别是多少?

    解答:

    解答这类题目时,首先要清楚地址线的位数对应的都是按字节寻址,如果是按字寻址,则需要拿出地址线来做字内字节寻址。

    还有一点就是,不要一看到是按字节寻址,就马上从数据线拿出4根地址线,即,得出按字节寻址是4MB,这是错误的。寻址本身和数据线没有任何关系。

    正确解题思路:

    首先,32根数据线可以看成存储字长是32位,那么一个存储字就有4个字节,如图所示。

    假设现在按字节寻址,20根地址线的寻址范围应该是,然后因为是按字节寻址,所以每个寻址单元已经是最小的,不需要字内寻址。

    如果是按字寻址,那么还有没有20位的地址线来寻址?

    没有,因为每个字有4个字节。这4个字节的区分,如图所示,字号为0的字里面有0号、1号、2号、3号共4个字节,只能从20根地址线里拿出两根来作为字内寻址。两根地址线的信号分别为00、01、10、11,分别代表字内的0号、1号、2号、3号字节。这样,只剩18根地址线来寻址,按字寻址的寻址范围是2^18=256K。

     注意:以后遇到的寻址范围题具就是这两种情况。

    可能疑问点:

    什么是字地址?

    解析:按字节编址时,一个字可能占用几个存储单元,字地址就是这几个连续存储单元地址中的最小值,例如,假定机器中一个字为32位,按字节编址,那么字地址指具有4的倍数的那些地址,如0、4、8、12、…;对应的还有半字地址(2的倍数,如0、2、4、6、…)、双字地址(8的倍数,如0、8、16、…)。

    扩展知识点:考生可能会遇到下面这样的题目。

    一个16K×32位的存储器,其地址线和数据线总共多少根?

    相信这种题目考生都会做,地址线和数据线分别是14根和32根,共46根。

    但是如果题目是这样:已知存储器的容量为1MB,那地址线和数据线一共多少根?

    因为有无数种书写方式,写成1M×8、512K×16、256K×32,对应的数据线和地址线总和分别为28、35、50,哪个是对的?

    记住一点,只要写成nMB的形式,一律默认为nMx8,应该是28根。

    另外,在介绍存储器结构时讲过,从存储器中取出的信息要先存放在数据寄存器,因此数据寄存器的位数应该和一个存储单元的大小一致(如果小于存储单元,则放不下;如果大于存储单元,则浪费),即数据寄存器的位数和存储字长要相等。

     

     

    展开全文
  • 计算机的容量对于存储单元个数乘以存储...MAR的位数以及数据寄存器MDR的位数的关系。 总的容量等于2的mar位数的n次方乘以mdr的位数 因为地址寄存器n位二进制代码。可以表示的地址单元的个数是二的n次方。这里就是我...

    在这里插入图片描述
    计算机的容量对于存储单元个数乘以存储字长。

    存储单元个数。就相当于存储体的行数。
    存储字长。就相当于存储体的列数。

    计算机的容量其实就是求它的总的位数。能够存放一和零的个数。

    要注意还有一个说法。
    就是容量和地址寄存器。MAR的位数以及数据寄存器MDR的位数的关系。

    总的容量等于2的mar位数的n次方乘以mdr的位数

    因为地址寄存器n位二进制代码。可以表示的地址单元的个数是二的n次方。这里就是我们存储单元的个数

    而数据寄存器的位数,就是我们存储字长的位数

    展开全文
  • CPU位数 = CPU中寄存器位数 = CPU能够一次并行处理的数据宽度 = 数据总线宽度 CPU...

    CPU位数 = CPU中寄存器的位数 = CPU能够一次并行处理的数据宽度 = 数据总线宽度

    CPU为了实现其功能一般设计了指令集(如:IA32指令集和x86-64指令集等),即是CPU的全部指令,这就是机器语言。计算机的所有功能都是基于CPU的指令集。指令集和CPU的位数是有联系 的。如Intel 8086 CPU 是16位,其指令集也是16位。如Intel 80386DX CPU 是32位,其指令集也是32位,但它也保持原16位指令集,这是为了向上兼容。

    注意:x86 又叫 IA32,即 Intel Architecture 32(Intel32位架构)

    操作系统位数 = 其所依赖的指令集位数 <= CPU位数

    机器字长 = 整数和指针数据的标称大小(字长决定的最重要的参数就是虚拟地址空间的最大大小)

    CPU位数与操作系统位数,这二者有区别也有联系,操作系统位数的概念是基于CPU的位数的。  CPU的位数是指CPU能一次同时寄存和处理二进制数码的位数,这和CPU中寄存器的位数对应。 操作系统的位数是说其所依赖的指令集的位数。计算机系统一般都应有向上兼容性,所以也可有64位CPU上运行32位操作系统、32位CPU上运行16位操作系统的情况。操作系统位数应该是根据指针类型的位数来定的。整数类型不一定跟位数相等,CPU位数准确地说应该是CPU一次能够并行处理的数据宽度,一般就是指数据总线宽度。


    linux下查看CPU硬件架构

    $ arch
    x86_64
    $ uname -m
    x86_64
    $ echo $HOSTTYPE
    x86_64

    linux下查看CPU的信息

    $lscpu(或者查看文件/proc/cpuinfo)

    Architecture:          i686
    CPU op-mode(s):        32-bit, 64-bit
    Byte Order:            Little Endian
    CPU(s):                1
    On-line CPU(s) list:   0
    Thread(s) per core:    1
    Core(s) per socket:    1
    Socket(s):             1
    Vendor ID:             GenuineIntel
    CPU family:            6
    Model:                 37
    Stepping:              5
    CPU MHz:               2261.019
    BogoMIPS:              4522.03
    Hypervisor vendor:     VMware
    Virtualization type:   full
    L1d cache:             32K
    L1i cache:             32K
    L2 cache:              256K
    L3 cache:              3072K

    Linux下查看系统位数:

    $ getconf LONG_BIT 
    64
    $ getconf WORD_BIT
    32
    上述信息显示这个系统时64位系统。

    CPU寻址能力 = 2^S (s为地址总线宽度) <= CPU位数

    $ cat /proc/cpuinfo | grep -i address
    address sizes    : 36 bits physical, 48 bits virtual
    表示物理内存寻址64G,虚拟内存寻址256T. (就是说,内存超过64G的部分也没什么用,硬盘超过256T的部分也没用)

    附:

    64位CPU如:AMD Athlon64 、Intel Pentium 4 F
    32位CPU如:Intel 80386DX 到 Intel Pentium III 和部分Intel Pentium 4
    16位CPU如:Intel 8086、Intel 80286
    64位操作系统如:Windows XP Professional x64和Windows Server 2003 x64
    32位操作系统如:Windows95、Windows98、Windows NT、Windows 2000、Windows XP
    16位操作系统如:DOS  
    Windows1.0到3.2是运行在DOS上的,不能算是独立的操作系统。

    展开全文
  • CPU位数:表示的是其通用寄存器位数,CPU的位数表示该CPU一次处理数据的最大位数数据线位数:是CPU的理论最大寻址空间,也是CPU与内存之间一次最大的数据传输位数。 地址线位数:是CPU实际的物理寻址空间。 ...
  • 什么是段寄存器,数据寄存器

    千次阅读 2020-04-01 12:18:19
    寄存器(Register)是CPU内部的元件,所以在寄存器之间的数据传送非常快。用途:1.可将寄存器内的数据执行算术及逻辑运算。 2.存于寄存器内的地址可用来指向内存...8086有8个8位数据寄存器, 这些8位寄存器可分别组...
  • CPU的数据线位数代表CPU的寻址范围,且
  •   其中PORT寄存器即数据寄存器,是通过AVR的IO操作将数据输出至某一管脚,但其寄存器是配合DDR寄存器同时作用的,若DDR设置为输出状态,则PORT是相应的会设置为1,即高电平输出,反之会设置为0,即低电平输出。...
  • 在学计组的过程,我们总是会碰到这样的说法,xx位计算机,以字编址,某16位机器,xx位...字长:通常指CPU内部用于整数运算的数据通路的宽度,因此字长等于CPU内部用于整数运算的运算器位数和通用寄存器宽度,它反..
  • 要存取数据或指令就要知道数据或指令存放的位置,地址寄存器存储的就是CPU当前要存取的数据或指令的地址,该地址是由地址总线传输到地址寄存器上的。 假设地址总线有n位,即共有n位二进制位来表示地址,那么最多可以...
  • :DMA 总线也主要是用来传输数据,这个数据可以是在某个外设的数据寄存器,可以在SRAM,可以在内部的 FLASH。因为数据可以被 Dcode 总线和 DMA 总线访问,所以为了避免访问冲突,在取数的时候需要经过一个总线矩阵来...
  • 指令寄存器位数与机器字长相同MDRin PCout 地址 总线 数据 总线 PCin Ad(IR)out MDRout MARin ALU Ri Y Z Yin Zin Riin Riout Zout ALUin ALU控制 + - PC MAR MDR +1 IRin IR 一、(20分)某计算机有零地址指令16条...
  • 移位寄存器

    2020-12-09 01:57:52
    一般说来,寄存单元的个数就是移位寄存器位数。为了完成不同的移位功能,每个寄存单元的输出与其相邻的下一个寄存单元的输入之间的连接方式也不同。(2)所有寄存单元共用一个时钟。在公共时钟的作用下,各个寄存...
  • 将AX寄存器中的16位数分成4组,每组4位,然后把这四组数分别放在AL、BL、CL和DL中。
  • 实现这种多维移位寄存器的方法可以是将几个具有相同位数的移位寄存器并联起来。  移位寄存器的输入、输出都可以是并行或串行的。它们经常被配置成串入并出(serial-in, parallel-out, SIPO)的形式或并入串出...
  • CPU和寄存器详解

    千次阅读 多人点赞 2022-01-21 18:59:04
    4.1.1数据寄存器: AX,BX,CX,DX 称作为数据寄存器,都可以暂存一般的数据,他们还具有其他的特殊用途,具体的特殊用途如下: AX (Accumulator):累加寄存器,也称之为累加器,除了做加法以外,还可以做乘法或除...
  • 寄存器中按位定义数据的方法存在于很多厂家设备的MODBUS数据协议中。区别于线圈状态(RW)和离散输入(RO),寄存器中通过定义组合位数据,更有利于高效传输状态信息和设置开关量。 由于位数据被定义在寄存器中,其...
  • 展开全部直接创建以个双字的变量:三菱PLC存储指令,使用DMOV指令可使数据寄存器D存放62616964757a686964616fe78988e69d833133343136303032位数据,可以存储更多数据。MOV指令存储数据是单字节的16位数据,范围是-...
  • STM32寄存器的简介、地址查找,与直接操作寄存器

    万次阅读 多人点赞 2019-01-11 11:15:15
    什么是寄存器 提到单片机,就不得不提到寄存器。根据百度百科介绍,寄存器是中央处理器内的组成部分。寄存器是有限存贮容量的高速存贮部件,... 存放数据寄存器是最好理解的,如果你需要读取一个数据,直接到这个...
  • 认识寄存器(X64)

    2021-06-28 00:06:10
    一个X86-64的CPU包含一组16个存储64位值的通用目的寄存器,对于IA32来说,是一组8个存储32位值的通用寄存器,下图红框中即为IA32的寄存器。而且相对于8086,IA32是在寄存器前面加了%e的前缀,X86-64是加了%r的前缀。...
  • MIPs32寄存器

    千次阅读 2019-12-07 16:47:08
     MIPS有32个通用寄存器($0-$31),各寄存器的功能及汇编程序中使用约定如下:  下表描述32个通用寄存器的别名和用途 REGISTER NAME USAGE $0 $zero 常量0(constant ...
  • 8086芯片寄存器简介

    千次阅读 2021-05-11 21:05:51
    8086芯片寄存器简介 寄存器分组 ...AX,BX,CX,DX 称作为数据寄存器: AX (Accumulator):累加寄存器,也称之为累加器; BX (Base):基地址寄存器; CX (Count):计数器寄存器; DX (Data):数据寄存.
  • 数据寄存器(USART_DR)数据寄存器USART_DR的DR[8:0]包含了发送或接收的数据。由于它是由两个寄存器组成的,一个给发送用(TDR),一个给接收用(RDR),该寄存器兼具读和写的功能。TDR寄存器提供了内部总线和输出移位寄存器...
  • 寄存器

    2020-02-23 21:24:19
    AX,BX,CX,DX,是四种通用寄存器,用于保存数据,是数据寄存器 四种寄存器容量都为两个字节,是十六位寄存器,表示范围0-65535,216 上述四种寄存器都可以分割成对应的2个8位寄存器, AX = AH + AL,高八位成为AH...
  • 基于emu8086微机模拟器的16位寄存器构成32位大数乘法器的实验
  • 一个非常简单的实验,...该项目通过启用第一个数字,然后将数据发送到移位寄存器来工作,移位寄存器数据发送到启用的数字。然后禁用第一个数字,启用第二个数字并重复该过程。 电路城原创内容,未经同意,不得转载!
  • 8086数据寄存器

    2013-06-15 10:34:38
    8086CPU有四个16位数据寄存器可分成8个8位寄存器 AX(AH,AL)|BX(BH,BL)|CX(CH,CL)|DX(DH,DL) 数据寄存器主要用来保存操作数和保存运算结果等 AX 常用作累加器(accumulator)用来保存临时数据比如MOV AX,DATA将数据...
  • 当CPU的位数达到32位,速度达到100M以上时,要在一个指令周期内对32位的数据进行32 位内任意移位,以前的设计方法已经很难达到要求。曾经有过对32位桶形移位寄存器的行为级描述 [1],但其只适用于RISC指令集,并且...
  • 1.CPU位数=CPU中寄存器位数=CPU能够一次并行处理的数据宽度(位数)=数据总线宽度; //现在的计算机处理器一般都是64位,这是硬件的事。 2.CPU为了实现其功能设计了指令集,即是CPU的全部指令,这是机器语言。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 39,524
精华内容 15,809
关键字:

数据寄存器位数

友情链接: opera8.0.rar