PageSourceSearch

https://heleifz.github.io/15471318129470.html

html heleifz.github.io collected 2026-10-03 09:17:18 UTC 12,039 bytes, 296 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en">
3  <head>
4    <meta charset="utf-8" />
5    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6    <title>
7    
8  Nand2tetris - 触发器,寄存器,RAM - Helei's Tech Notes
9  
10  </title>
11 <meta name="description" content="(map learn unkown-stream)">
12 <link href="atom.xml" rel="alternate" title="Helei's Tech Notes" type="application/atom+xml">
13    <link rel="stylesheet" href="asset/css/foundation.min.css" />
14    <link rel="stylesheet" href="asset/css/docs.css" />
15
16    
16<script src="asset/js/vendor/modernizr.js"></script>
16
17    
17<script src="asset/js/vendor/jquery.js"></script>
17
18    
18<script src="asset/highlightjs/highlight.pack.js"></script>
18
19    <link href="asset/highlightjs/styles/github.css" media="screen, projection" rel="stylesheet" type="text/css">
20    
20<script>hljs.initHighlightingOnLoad();</script>
20
21    
22  </head>
23  <body class="antialiased hide-extras">
24    
25    <div class="marketing off-canvas-wrap" data-offcanvas>
26      <div class="inner-wrap">
27
28
29<nav class="top-bar docs-bar hide-for-small" data-topbar>
30
31<div id="header">
32    <h1><a href="index.html">Helei's Tech Notes</a></h1>
33</div>
34
35</nav>
36        <nav class="tab-bar show-for-small">
37  <a href="javascript:void(0)" class="left-off-canvas-toggle menu-icon">
38    <span> &nbsp; Helei's Tech Notes</span>
39  </a>
40</nav>
41
42<aside class="left-off-canvas-menu">
43      <ul class="off-canvas-list">
44      <li><a href="index.html">Home</a></li>
45      
46        <li class="divider"></li>
47        <li><label>技术</label></li>
48
49          
50            <li><a title="Nand2tetris - CPU 是机器语言的解释器" href="15511071282967.html">Nand2tetris - CPU 是机器语言的解释器</a></li>
51          
52            <li><a title="Nand2tetris - 触发器,寄存器,RAM" href="15471318129470.html">Nand2tetris - 触发器,寄存器,RAM</a></li>
53          
54            <li><a title="Nand2tetris - 从布尔逻辑到算数运算" href="15468825413653.html">Nand2tetris - 从布尔逻辑到算数运算</a></li>
55          
56            <li><a title="Nand2tetris - 布尔逻辑" href="15467841044137.html">Nand2tetris - 布尔逻辑</a></li>
57          
58            <li><a title="Flask,从简单开始" href="15013781349463.html">Flask,从简单开始</a></li>
59          
60            <li><a title="Apache 配置文件解释" href="14698086378177.html">Apache 配置文件解释</a></li>
61          
62            <li><a title="Git" href="14696393471602.html">Git</a></li>
63          
64            <li><a title="shared_ptr 原理及事故" href="14696398760857.html">shared_ptr 原理及事故</a></li>
65          
66
67      
68        <li class="divider"></li>
69        <li><label>算法</label></li>
70
71          
72            <li><a title="SVD在图像处理中的基本应用" href="15084626290253.html">SVD在图像处理中的基本应用</a></li>
73          
74            <li><a title="神经网络计算模型 - 理论解释" href="14696391071598.html">神经网络计算模型 - 理论解释</a></li>
75          
76            <li><a title="fastText 源码分析" href="14732610572844.html">fastText 源码分析</a></li>
77          
78            <li><a title="SVM 推导" href="14698080869715.html">SVM 推导</a></li>
79          
80            <li><a title="WSABIE 算法解释" href="14696374110477.html">WSABIE 算法解释</a></li>
81          
82
83      
84        <li class="divider"></li>
85        <li><label>想法</label></li>
86
87          
88            <li><a title="2019 新年快乐" href="15467823342030.html">2019 新年快乐</a></li>
89          
90            <li><a title="如何学习新技术" href="14953815607558.html">如何学习新技术</a></li>
91          
92
93      
94      </ul>
95    </aside>
96
97<a class="exit-off-canvas" href="#"></a>
98
99        <section id="main-content" role="main" class="scroll-container">
100
101          <div class="row">
102            <div class="large-3 medium-3 columns">
103              <div class="hide-for-small">
104                <div class="sidebar">
105                <nav>
106                  <ul id="side-nav" class="side-nav">
107
108                    
109                      <li class="side-title"><span>技术</span></li>
110                        
111                          <li><a title="Nand2tetris - CPU 是机器语言的解释器" href="15511071282967.html">Nand2tetris - CPU 是机器语言的解释器</a></li>
112                        
113                          <li><a title="Nand2tetris - 触发器,寄存器,RAM" href="15471318129470.html">Nand2tetris - 触发器,寄存器,RAM</a></li>
114                        
115                          <li><a title="Nand2tetris - 从布尔逻辑到算数运算" href="15468825413653.html">Nand2tetris - 从布尔逻辑到算数运算</a></li>
116                        
117                          <li><a title="Nand2tetris - 布尔逻辑" href="15467841044137.html">Nand2tetris - 布尔逻辑</a></li>
118                        
119                          <li><a title="Flask,从简单开始" href="15013781349463.html">Flask,从简单开始</a></li>
120                        
121                          <li><a title="Apache 配置文件解释" href="14698086378177.html">Apache 配置文件解释</a></li>
122                        
123                          <li><a title="Git" href="14696393471602.html">Git</a></li>
124                        
125                          <li><a title="shared_ptr 原理及事故" href="14696398760857.html">shared_ptr 原理及事故</a></li>
126                        
127
128                    
129                      <li class="side-title"><span>算法</span></li>
130                        
131                          <li><a title="SVD在图像处理中的基本应用" href="15084626290253.html">SVD在图像处理中的基本应用</a></li>
132                        
133                          <li><a title="神经网络计算模型 - 理论解释" href="14696391071598.html">
133神经网络计算模型 - 理论解释</a></li>
134                        
135                          <li><a title="fastText 源码分析" href="14732610572844.html">fastText 源码分析</a></li>
136                        
137                          <li><a title="SVM 推导" href="14698080869715.html">SVM 推导</a></li>
138                        
139                          <li><a title="WSABIE 算法解释" href="14696374110477.html">WSABIE 算法解释</a></li>
140                        
141
142                    
143                      <li class="side-title"><span>想法</span></li>
144                        
145                          <li><a title="2019 新年快乐" href="15467823342030.html">2019 新年快乐</a></li>
146                        
147                          <li><a title="如何学习新技术" href="14953815607558.html">如何学习新技术</a></li>
148                        
149
150                    
151                  </ul>
152                </nav>
153                </div>
154              </div>
155            </div>
156            <div class="large-9 medium-9 columns">
157
158 <div class="markdown-body">
159<h1>Nand2tetris - 触发器,寄存器,RAM</h1>
160
161<blockquote>
162<p>本文是 nand2tetris 课程的读书笔记,不会列举过多细节,仅精炼出有意思的概念,供日后查阅。</p>
163</blockquote>
164
165<hr/>
166
167<p>存储的意思是,维持曾经有的状态。<br/>
168一旦有了“曾经”,我们的系统就有了时间概念。<br/>
169时钟信号为系统带来时间,触发器使系统能看一眼“曾经”。</p>
170
171<blockquote>
172<p>\(out(t) = in(t - 1)\)</p>
173</blockquote>
174
175<p>如果将输出端接回输入端,我们可以让 \(out(t)\) 保持无限长的时间:</p>
176
177<blockquote>
178<p>\(out(t) = out(t-1)\)</p>
179</blockquote>
180
181<p>如果给这个函数加上一个控制位,我们就得到了 1-bit 寄存器:</p>
182
183<blockquote>
184<p>\(out(t)=\begin{equation}<br/>
185\begin{cases}<br/>
186out(t-1)&amp;  load = 0\\<br/>
187in&amp; load = 1\\<br/>
188\end{cases}<br/>
189\end{equation}\)</p>
190</blockquote>
191
192<p>如果将它与加法器连在一起,我们就得到了计数器:</p>
193
194<blockquote>
195<p>\(out(t) = out(t-1) + 1\)</p>
196</blockquote>
197
198<p>基于触发器与反馈回路的结合,我们可以构造任意复杂的,具有状态的系统。</p>
199
200<p><img src="media/15471318129470/%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7%202019-01-10%20%E4%B8%8B%E5%8D%8811.10.58.png" alt="屏幕快照 2019-01-10 下午11.10.58"/></p>
201
202<hr/>
203
204<p>用 1-bit 寄存器并联,我们得到了 n-bit register。<br/>
205用 k 个 n-bit register 并联,加上寻址逻辑电路,我们得到了 RAM 的基本架构。<br/>
206由简单到复杂演变,全依赖组件间的抽象架构。register 提供单个字的存储 <strong>服务</strong>,RAM 调用了这一服务,并对更上层模块提供了随机存储 <strong>服务</strong>。</p>
207
208<p>计算机技术日新月异,程序员很容易跟不上时代,这是真的吗?:)</p>
209
210
211</div>
212
213<br /><br />
214<hr />
215
216<div class="row clearfix">
217  <div class="large-6 columns">
218	<div class="text-left" style="padding:15px 0px;">
219		
220	        <a href="15511071282967.html"  title="Previous Post: Nand2tetris - CPU 是机器语言的解释器">&laquo; Nand2tetris - CPU 是机器语言的解释器</a>
221	    
222	</div>
223  </div>
224  <div class="large-6 columns">
225	<div class="text-right" style="padding:15px 0px;">
226		
227	        <a href="15468825413653.html" 
228	        title="Next Post: Nand2tetris - 从布尔逻辑到算数运算">Nand2tetris - 从布尔逻辑到算数运算 &raquo;</a>
229	    
230	</div>
231  </div>
232</div>
233
234<div class="row">
235<div style="padding:0px 0.93em;" class="share-comments">
236<div id="container"></div>
237<link rel="stylesheet" href="https://imsun.github.io/gitment/style/default.css">
238<script src="https://imsun.github.io/gitment/dist/gitment.browser.js"></script>
vendor: 1 bytes, line 238
238
239<script>
240var gitment = new Gitment({
241  owner: 'heleifz',
242  repo: 'heleifz.github.io',
243  oauth: {
244    client_id: '7deba80f1937ef31e6d3',
245    client_secret: 'c7c185503c849fe0f61b3af65c78a0d1f6fbfd5a',
246  },
247})
248gitment.render('container')
249</script>
249
250</div>
251</div>
252<script type="text/javascript">
253	$(function(){
254		var currentURL = '15471318129470.html';
255		$('#side-nav a').each(function(){
256			if($(this).attr('href') == currentURL){
257				$(this).parent().addClass('active');
258			}
259		});
260	});
261</script>
261  
262</div></div>
263
264
265<div class="page-bottom">
266  <div class="row">
267  <hr />
268  <div class="small-9 columns">
269  <p class="copyright">Copyright &copy; 2015
270Powered by <a target="_blank" href="http://www.mweb.im">MWeb</a>,&nbsp; 
271Theme used <a target="_blank" href="http://github.com">GitHub CSS</a>.</p>
272  </div>
273  <div class="small-3 columns">
274  <p class="copyright text-right"><a href="#header">TOP</a></p>
275  </div>
276   
277  </div>
278</div>
279
280        </section>
281      </div>
282    </div>
283    
284    
285    
285<script src="asset/js/foundation.min.js"></script>
285
286    
286<script src="asset/js/foundation/foundation.offcanvas.js"></script>
286
287    
287<script>
288      $(document).foundation();
289
290     
291    </script>
291
292    
292<script src="asset/chart/all-min.js"></script>
292<script type="text/javascript">$(function(){    var mwebii=0;    var mwebChartEleId = 'mweb-chart-ele-';    $('pre>code').each(function(){        mwebii++;        var eleiid = mwebChartEleId+mwebii;        if($(this).hasClass('language-sequence')){            var ele = $(this).addClass('nohighlight').parent();            $('<div id="'+eleiid+'"></div>').insertAfter(ele);            ele.hide();            var diagram = Diagram.parse($(this).text());            diagram.drawSVG(eleiid,{theme: 'simple'});        }else if($(this).hasClass('language-flow')){            var ele = $(this).addClass('nohighlight').parent();            $('<div id="'+eleiid+'"></div>').insertAfter(ele);            ele.hide();            var diagram = flowchart.parse($(this).text());            diagram.drawSVG(eleiid);        }    });});</script>
vendor: 1 bytes, line 292
292
293<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
293<script type="text/x-mathjax-config">MathJax.Hub.Config({TeX: { equationNumbers: { autoNumber: "AMS" } }});</script>
293
294
295  </body>
296</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.