<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/rss/stylesheet/" type="text/xsl"?>
<rss xmlns:content='http://purl.org/rss/1.0/modules/content/' xmlns:taxo='http://purl.org/rss/1.0/modules/taxonomy/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:itunes='http://www.itunes.com/dtds/podcast-1.0.dtd' xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0" xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:atom='http://www.w3.org/2005/Atom' xmlns:podbridge='http://www.podbridge.com/podbridge-ad.dtd' version='2.0'>
<channel>
  <title>苏迟但到的主页</title>
  <language>zh-cn</language>
  <generator>microfeed.org</generator>
  <itunes:type>episodic</itunes:type>
  <itunes:explicit>false</itunes:explicit>
  <atom:link rel="self" href="https://kexohproject.pages.dev/rss/" type="application/rss+xml"/>
  <link>https://kexohproject.pages.dev</link>
  <description>
    <![CDATA[<p>你好，欢迎访问个人主页！</p><p>擅长密码学，安全分析，数字水印等技术。</p><p>你可以联系我通过:findmykexin@gmail.com或者知乎私信。</p><p>我的知乎链接：<a href="https://www.zhihu.com/people/su-chi-dan-dao" rel="noopener noreferrer" target="_blank">苏迟但到 - 知乎 (zhihu.com)</a></p><p>我的github链接：<a href="https://github.com/kexinoh" rel="noopener noreferrer" target="_blank">kexinoh</a></p>]]>
  </description>
  <itunes:author>苏迟但到</itunes:author>
  <itunes:image href="https://kexohcdn.gptapi.cyou/kexohproject/production/images/channel-2e54d141ee195646ca12a9d16507a908.jpg"/>
  <image>
    <title>苏迟但到的主页</title>
    <url>https://kexohcdn.gptapi.cyou/kexohproject/production/images/channel-2e54d141ee195646ca12a9d16507a908.jpg</url>
    <link>https://kexohproject.pages.dev</link>
  </image>
  <copyright>©2024</copyright>
  <itunes:category text="Education">
    <itunes:category text="Language Learning"/>
  </itunes:category>
  <itunes:category text="Technology"/>
  <item>
    <title>按字或者按字节编址，是不是说一个存储单元的位数就与字或字节的位数相同？</title>
    <guid>TtBcr83ygRm</guid>
    <pubDate>Thu, 21 Jul 2022 05:34:39 GMT</pubDate>
    <itunes:explicit>false</itunes:explicit>
    <description>
      <![CDATA[<p data-pid="ePpqZxAB">#计算机组成原理#存储单元和字的大小没有必然的关系。</p><p data-pid="0tfdn3XZ">同样，地址也和字的大小没有必然关系。</p><p data-pid="_Ry9OL9f">一个存储单元里面可以包含了多个字，地址也可以由多个字复合而成。</p><p data-pid="r9k5CMtn">存储单元中包含多个字的就叫做多字存储器。</p><p data-pid="a0ZWqLar"><b>注意：</b>在这里声明一下，在计算机中字有着很多意思，单独拿出来说的时候是指CPU进行整数运算的字的大小，但是在存储器这里指存储字长，等于数据线的宽度。</p><p data-pid="mN10IRbA">为什么要开发多字存储器呢？</p><p data-pid="KG5ZKbWF">因为CPU的速度很快，远快于存储器。当CPU请求一个地址内容后，会将硬盘的数据转送到主存里面，再转存到CPU中。如果单字的话，那么许多个存取周期后才能完成运输，造成了整体上的速度的短板效应。如果我们采用多字存储器的话，例如8字存储器，那么可以将转运时间减小到1/8.可以极大的减小IO所浪费的时间。</p><p data-pid="guOxZCgU">同样32位的地址可以索引4GB的空间，但是64位的地址索引的空间又太大了，因此在当前版本的AMD64架构就规定了只用48位地址；一个表示虚拟内存地址的64位指针只有低48位有效并带符号扩展到64位——换句话说，其高16位必须是全1或全0，而且必须与低48位的最高位（第47位）一致，否则通过该地址访问内存会产生#GP异常（general-protection exception）。<br/>只用48位的原因很简单：因为现在还用不到完整的64位寻址空间，所以硬件也没必要支持那么多位的地址。<br/>设计为带符号扩展的原因也很简单：很多环境中，寻址空间的高一半（higher-half）有特殊用途，而低一半（lower-half）给用户做一般用途。这“高/低”可以通过最高位是1还是0来判断；如果把地址看成带符号整数，那么“负数”部分就是高一半，“正数”部分就是低一半。所以AMD64在设计成只用64位中的48位时，要求canonical form要满足带符号扩展的要求。以后就算允许更多位地址，满足当前限制的地址也仍然会是合法地址，保证了向前兼容性。</p><p data-pid="dlkZo52x">在古老的DOS时代，也会用两个16位的字来描述20位的地址。如果学过汇编的话，那么这个将很容易理解。</p><p data-pid="AP55jMmf">结论：存储单元包含的字的多少与字的位数无关，地址也不一定为一个字的大小。</p><p data-pid="44b5KDX3">推荐一本好书，欢迎大家购买</p><a data-draft-node="block" data-draft-type="mcn-link-card" data-mcn-id="1533444443469897728"></a><p></p>]]>
    </description>
    <itunes:title>New Article Title for iTunes</itunes:title>
  </item>
</channel>
</rss>