精华内容
下载资源
问答
  • 西门子S7-200SMART PLC编程应用入门教程
  • 字寻址和按字节寻址 按字寻址和按字节寻址 先从一道简单的问题说起!设有一个1MB容量的存储器,字长32位,问:按字节编址,字编址的寻址范围以及各自的寻址范围大小? 如果按字节编址,则: 1MB = 2^20B 1字节=1B=8...

    按字寻址和按字节寻址

    按字寻址和按字节寻址
    先从一道简单的问题说起!设有一个1MB容量的存储器,字长32位,问:按字节编址,字编址的寻址范围以及各自的寻址范围大小?
    如果按字节编址,则:
    1MB = 2^20B
    1字节=1B=8bit
    2^20B/1B = 2^20
    地址范围为0~(220)-1,也就是说需要二十根地址线才能完成对1MB空间的编码,所以地址寄存器为20位,寻址范围大小为220=1M
    如果按字编址,则
    1MB=2^20B
    1字=32bit=4B
    2^20B/4B = 2^18
    地址范围为0~218-1,也就是说我们至少要用18根地址线才能完成对1MB空间的编码。因此按字编址的寻址范围是218
    以上题目注意几点:
    1.区分寻址空间与寻址范围两个不同的概念,寻址范围仅仅是一个数字范围,不带有单位
    而寻址范围的大小很明显是一个数,指寻址区间的大小
    而寻址空间指能够寻址最大容量,单位一般用MB、B来表示;本题中寻址范围为0~(2^20)-1,寻址空间为1MB。
    2.按字节寻址,指的是存储空间的最小编址单位是字节,按字编址,是指存储空间的最小编址单位是字,以上题为例,总的存储器容量是一定的,按字编址和按字节编址所需要的编码数量是不同的,按字编址由于编址单位比较大(1字=32bit=4B),从而编码较少,而按字节编址由于编码单位较小(1字节=1B=8bit),从而编码较多。
    3.区别M和MB。
    M为数量单位。1024=1K,1024K=1M MB指容量大小。1024B=1KB,1024KB=1MB.
    内存编址
    前面我们知道了DRAM颗粒以及内存模块是如何扩展字长和容量的。一个内存可能是8位,也可能是64位,容量可能是1M,也可能是1G。那么内存是如何编地的呢?和地址总线,计算机字长之间又有什么关系呢?
    2.1 字长
    计算机在同一时间内处理的一组二进制数称为一个计算机的“字”,而这组二进制数的位数就是“字长”。。通常称处理字长为8位数据的CPU叫8位CPU,32位CPU就是在同一时间内处理字长为32位的二进制数据。 所以这里的字并不是我们理解的双字节(Word)而是和硬件相关的一个概念。一般来说计算机的数据线的位数和字长是相同的。这样从内存获取数据后,只需要一次就能把数据全部传送给CPU。
    2.2 地址总线
    前面我们已经介绍过地址总线的功能。地址总线的数量决定了他最大的寻址范围。就目前来说一般地址总线先字长相同。比如32位计算机拥有32为数据线和32为地线,最大寻址范围是4G(0x00000000 ~ 0xFFFFFFFF)。当然也有例外,Intel的8086是16为字长的CPU,采用了16位数据线和20位数据线。
    2.3 内存编址
    从前面我们知道一个内存的大小和它芯片扩展方式有关。比如我们内存模块是采用 16M8bit的内存颗粒,那么我们使用4个颗粒进行位扩展,成为16M32bit,使用4个颗粒进行字容量扩展变为64M32bit。那么我们内存模块使用了16个内存颗粒,实际大小是256MB。
    我们需要对这个256M的内存进行编址以便CPU能够使用它,通常我们多种编址方式:
    按字编址: 对于这个256M内存来说,它的寻址范围是64M,而每个内存地址可以存储32bit数据。
    按半字编址:对于这个256M内存来说,它的寻址范围是128M,而每个内存地址可以存储16bit数据。
    按字节编址:对于这个256M内存来说,它的寻址范围是256M,而每个内存地址可以存储8bit数据。
    对于我们现在的计算机来说,主要都是采用按字节编址的方式。所以我们可以把内存简单的看成一个线性数组,数组每个元素的大小为8bit,我们称为一个存储单元。这一点很重要,因为后面讨论的所有问题内存都是以按字节编址的方式。 这也是为什么对于32位计算机来说,能使用的最多容量的内存为4GB。如果我们按字编地址,能使用的最大内存容量就是16GB了。
    于是很容易想到一个问题,为什么我们要采用字节编址的方式呢?关于这个问题,我在网上基本没有找到答案,甚至都找不到问这个问题的。所以这里没法给出答案,为什么为什么呢? 麻烦知道的朋友告诉我哈。
    另一方面的问题是,内存编址方式和DRAM芯片是否有关呢? 我认为还是有一定关系。比如我DRAM的芯片是8M
    8bit,那么芯片最小的存储单位就是8bit,那么我们内存编址就不能按照半个字节来编址。否则内存取出8bit,根本不知道你要那4bit传给CPU。也有一种说法是现在的DRAM芯片cell都是8bit,所以采用按字节编址。另一方面应该也和数据总线位宽有关。

    展开全文
  • 关于按字寻址和按字节寻址的理解

    万次阅读 多人点赞 2016-11-03 19:11:09
    关于按字寻址和按字节寻址的理解

    关于按字寻址和按字节寻址的理解

    我们先从一道简单的问题说起!
    设有一个1MB容量的存储器,字长32位,问:按字节编址,字编址的寻址范围以及各自的寻址范围大小?
    *如果按字节编址,则*
    1MB = 2^20B
    1字节=1B=8bit
    2^20B/1B = 2^20
    地址范围为0~(2^20)-1,也就是说需要二十根地址线才能完成对1MB空间的编码,所以地址寄存器为20位,寻址范围大小为2^20=1M
    *如果按字编址,则*
    1MB=2^20B
    1字=32bit=4B
    2^20B/4B = 2^18
    地址范围为0~2^18-1,也就是说我们至少要用18根地址线才能完成对1MB空间的编码。因此按字编址的寻址范围是2^18

    *以上题目注意几点:*
    1.区分寻址空间与寻址范围两个不同的概念,寻址范围仅仅是一个数字范围,不带有单位
    而寻址范围的大小很明显是一个数,指寻址区间的大小
    而寻址空间指能够寻址最大容量,单位一般用MB、B来表示;本题中寻址范围为0~(2^20)-1,寻址空间为1MB。

    2.按字节寻址,指的是存储空间的最小编址单位是字节,按字编址,是指存储空间的最小编址单位是字,以上题为例,总的存储器容量是一定的,按字编址和按字节编址所需要的编码数量是不同的,按字编址由于编址单位比较大(1字=32bit=4B),从而编码较少,而按字节编址由于编码单位较小(1字节=1B=8bit),从而编码较多。

    3.区别M和MB。
    M为数量单位。1024=1K,1024K=1M
    MB指容量大小。1024B=1KB,1024KB=1MB.

    什么是位、字节、字、KB、MB?

    什么是位、字节、字、KB、MB
      位:”位(bit)”是电子计算机中最小的数据单位。每一位的状态只能是0或1。

      字节:8个二进制位构成1个”字节(Byte)”,它是存储空间的基本计量单位。1个字节可以储存1个英文字母或者半个汉字,换句话说,1个汉字占据2个字节的存储空间。

      字:”字”由若干个字节构成,字的位数叫做字长,不同档次的机器有不同的字长。例如一台8位机,它的1个字就等于1个字节,字长为8位。如果是一台16位机,那么,它的1个字就由2个字节构成,字长为16位。字是计算机进行数据处理和运算的单位。

      KB:在一般的计量单位中,通常K表示1000。例如:1公里= 1000米,经常被写为1km;1公斤=1000克,写为1kg。同样K在二进制中也有类似的含义。只是这时K表示1024,也就是2的10次 方。1KB表示1K个Byte,也就是1024个字节。

      MB:计量单位中的M(兆)是10的6次方,见到M自然想起要在该数值的后边续上六个0,即扩大一百万倍。在二进制中,MB也表示到了百万级的数量级,但1MB不正好等于1000000字节,而是1048576字节,即 1MB = 2E+20 Bytes = 1048576Bytes。
      
      MB就是通常说的兆

      KB 1KB=1024B

      MB 1MB=1024KB

      GB 1GB=1024MB

    某机字长为32位,存储容量为64MB,若按字节编址.它的寻址范围是多少?

    问题:

    1、某计算机字长为32位,其存储容量为16MB,若按双字编址,它的寻址范围是多少?

    2、某机字长为32位,存储容量为64MB,若按字节编址.它的寻址范围是多少?

    解答:

    我的方法是全部换算成1位2进制的基本单元来算。先计算总容量,如第一题中是16mb中,一B为8位,也就是8个一位基本单元组成,16M=2^24位=2^24个一位基本单元。所以总的基本单元是2^24*8。

    一个字长是n位,就是说一个字是由n个一位基本单元组成。按照字来编址就是说由一个字所包含的一位基本单元的个数作为一个地址单元,它对应一个地址。同理,双字编址就是两个字所包含的的基本单元数作为一个地址单元。由于一个字节(1B)永远是8位,所以按字节编址永远是8个一位基本单元作为一个地址单元。寻址范围就是说总共有多少个这样的地址。

    第一题中一个字长是32位,对于按字编址来说一个地址单元有32个基本单元,按双字编址则是一个地址单元有64个,按字节是8个,总容量是2^24*8个。所以按字编址的地址数是2^24*8/32个,按双字是2^24*8/64个,按字节是2^24*8/8个。因此,第一题答案是2^21=2M。

    同理,第二题答案是2^26*8/8=2^26=64M。

    展开全文
  • 1个二进制位称为1个bit,8个二进制位称为1个Byte,也就是1个字节(8位)。不同的CPU一次可以处理的数据位数不同,32位CPU可以一次处理32位数据,64位CPU...若以字为单位,向上还有双字(两个字),四字(四个字)。 ...

      1个二进制位称为1个bit,8个二进制位称为1个Byte,也就是1个字节(8位)。不同的CPU一次可以处理的数据位数不同,32位CPU可以一次处理32位数据,64位CPU可以一次处理64位数据,这里的位,指的就是字长。而所谓的字长,我们有时会称为字(word)。在16位的CPU中,一个字刚好为两个字节,而32位CPU中,一个字是四个字节。若以字为单位,向上还有双字(两个字),四字(四个字)。

    定义字是根据处理器的特性决定的。首先ARM是32bit处理器,所以它的字是32bit的。半字就是16bit;字节不论在哪个CPU上都是8bit。如果在MSP430(混合信号处理器)上,由于它是16bit处理器,所以它的字是16bit的。半字=字节=8bit。CPU按照其处理信息的字长可以分为:八位微处理器、十六位微处理器、三十二位微处理器以及六十四位微处理器等。CPU最大能查找多大范围的地址叫做寻址能力,CPU的寻址能力以字节为单位,如32位寻址的CPU可以寻址2的32次方大小的地址也就是4G,这也是为什么32位的CPU最大能搭配4G内存的原因,再多的话CPU就找不到了。

    下面有一个问题࿱

    展开全文
  • 第二章 微处理器的编程结构 第四节 存储器地址的交叉及字节、和双寻址

    第二章 微处理器的编程结构

    第四节 存储器地址的交叉及字节、字和双字的寻址

    存储器地址的交叉

    展开全文
  • 关于按字节寻址和按字寻址的理解

    千次阅读 多人点赞 2019-12-05 13:14:02
    字寻址:每一个字含有多个字节,需要区分每个字节的位置,这就损失了一定的位数,余下的都可用于地址编号。(书P73“主存中存储单元地址的分配”的第一段的第六行中“用地址码的末两位来区分同一字节的4个字节的...
  • 字节寻址和按字寻址

    千次阅读 2020-12-14 19:55:45
    想要搞清 按字寻址 和 按字节寻址 就要先搞清位、字节、字长、字的定义 : 位:数据存储的最小单位。计算机中最小的数据单位,一个位的取值只能是0或1; 字节:由八位二进制数组成,是计算机中最基本的计量单位,也...
  • 字寻址和字节寻址

    2020-03-25 13:06:15
    假设CPU有20根地址线,32根数据线,试问按字节和字寻址,寻址范围分别是多少? 解答: 首先,默认情况下,地址线的位数对应的都是...如果是按字寻址,就需要拿出地址线做字内字节寻址。因为,一个字有多个字节。寻...
  • 存储器的结构

    2021-07-29 23:12:39
    存储器芯片的基本结构 ...然后通过一条数据线读出或写入数据到这一列的存储元,这些同一时间存取的"10100011"数据称为存储,这个存储字长为 1 Byte。 为了确保一次只能存取一个存储单元(一行存储
  • 我们先从一道简单的问题说起!... 设有一个1MB容量的存储器,字长32位,问:按字节编址,编址的寻址范围以及各自的寻址范围大小? 如果按字节编址,则 1MB = 2^20B 1字节=1B=8bit 2^20B/1B = 2^20 ...
  • CPU寻址方式与过程

    千次阅读 2013-10-28 22:19:01
    在看了上一篇转载的文章后,自己也仔细搜索研究了下关于CPU寻址方面的东西,写下来吧。 首先,说到寻址,当然离不开各种各种总线啦,先来看下我们的计算机系统内的总线结构图啦(下图来自大话存储)   如图,主板上...
  • 上周一直在忙几场考试和课程设计,今天发现自己机组基础实在是太差。。。。。。临近期末要狂补一下,大概会写很多... 设有一个1MB容量的存储器,字长32位,问:按字节编址,编址的寻址范围以及各自的寻址范围大...
  • 寻址空间与寻址范围

    万次阅读 多人点赞 2017-04-07 23:39:16
    寻址空间一般指的是CPU对于内存寻址的能力。通俗地说,就是能最多用到多少内存的一个问题,即能够寻址的最大容量。一般用MB和G来表示。 数据在存储器(RAM)中存放是有规律的 ,CPU在运算的时候需要把数据提取出来就...
  • 华中科技大学计算机组成原理慕课答案

    万次阅读 多人点赞 2020-01-26 00:09:18
    磁带 29、计算机字长32位,主存容量为128MB,按编址,其寻址范围为( D ) A.0 ~ 128M-1 B.0 ~ 64M-1 C.0 ~ 16M-1 D.0 ~ 32M-1 30、位结构为256Kx4位SRAM存储芯片,其地址引脚与数据引脚之和为( B ) A.24 B....
  • 字寻址,一个地址里面有多个存储单元 再选择一个存储单元 如12根地址线按字节寻址为 2的12次方4k(取址范围) 字长32则需要10根决定字地址,2根决定字内存储单元位置 2的10次方为1k(取址范围) 例二: 机器...
  • Java面试题大全(2020版)

    万次阅读 多人点赞 2019-11-26 11:59:06
    发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别?...
  • 寻址范围总结

    千次阅读 多人点赞 2016-08-28 18:00:50
    假设CPU有20根地址线,32根数据线,试问按字节和字寻址寻址范围分别是多少? 解答:首先,默认情况下,地址线的位数对应的都是按字节寻址。但是如果题目中数据线就只有4根,还当默认按字节寻址,那就大错特错了。...
  • 计算寻址范围

    万次阅读 多人点赞 2019-09-13 10:34:42
    本题中一个字长是32位,对于按字编址来说一个地址单元有32个基本单元,按双字编址则是一个地址单元有64个,按字节是8个,总容量是25610248个。所以按字编址的地址数是25610248/32个,按双字是25610248/64...
  • 一条字长的取数指令(LDA)存于存储器的100和101单元,其中第一个为操作码和寻址特征M,第二个为形式地址。 假设PC当前值为100,变址寄存器×R的内容为100,基址寄存器的内容为200,存储器各单元的内容如下所示...
  • 1、某计算机字长16位,其存储器容量为64KB,按编址时,其寻址范围是( ) 16位是2个字节、存储容量位64K个字节、1KB=1024B、64K/2=32K 2、一个16K*32位的SRAM存储芯片,其数据线和地址线之和为( ) 16K=214根据n...
  • 闲谈寻址-两种寻址方法
  • 一、立即寻址方式 操作数作为指令的一部分而直接写在指令中,这种操作数称为立即数,这种寻址方式也就称为立即数寻址方式。 立即数可以是8位、16位或32位,该数值紧跟在操作码之后。如果立即数为16位或32位,那么...
  • 数据储存单位位、字节、字、双字一 概念二 换算三 DSP数据类型长度 一 概念 计算机中,数据的储存是按照一定的规则进行储存的,而常用的是按照二进制进行储存。而位、字节、字、双字是计算机数据按照二进制储存的...
  • 计算机组成原理

    万次阅读 多人点赞 2019-06-02 14:13:55
    2、计算机字长16位,其存储容量为32MB,若按双字编址,它的寻址范围是多少? 寻址范围是:32M×8位(字节)/32位=8M 000 0000 0000 0000 0000 0000—111 1111 1111 1111 1111 1111 3、某SRAM芯片,其存储容量为...
  • CPU最大能查找多大范围的地址叫做寻址能力,CPU的寻址能力以字节为单位,如32位寻址的CPU可以寻址2的32次方大小的地址也就是4G,这也是为什么32位的CPU最大能搭配4G内存的原因,再多的话CPU就找不到了。 总线一般被...
  • 【计算】寻址范围

    万次阅读 多人点赞 2018-11-19 14:44:43
    题目:若某计算机字长为32位,内存容量为2GB,按编址,则可寻址范围为( )。 2GB按编址,就是2GB×8bit。字长为32位,即2GB×8bit/32= 512M

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,844
精华内容 11,937
关键字:

双字寻址