ZIP物联网开发习题集,c,c++ 111.5KB

hhtt19820919需要积分:6(1积分=1元)

资源文件列表:

CA_22-23_exercise2.zip 大约有1个文件
  1. CA_22-23_exercise2.pdf 112.98KB

资源介绍:

物联网开发习题集,c,c++ 【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。
<link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/base.min.css" rel="stylesheet"/><link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/css/fancy.min.css" rel="stylesheet"/><link href="/image.php?url=https://csdnimg.cn/release/download_crawler_static/89616993/raw.css" rel="stylesheet"/><div id="sidebar" style="display: none"><div id="outline"></div></div><div class="pf w0 h0" data-page-no="1" id="pf1"><div class="pc pc1 w0 h0"><img alt="" class="bi x0 y0 w1 h1" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/89616993/bg1.jpg"/><div class="t m0 x1 h2 y1 ff1 fs0 fc0 sc0 ls0 ws0">Computer<span class="_ _0"> </span>Arc<span class="_ _1"></span>hitecture<span class="_ _0"> </span>2022-23</div><div class="t m0 x2 h3 y2 ff2 fs1 fc0 sc0 ls0 ws0">Assessed<span class="_ _0"> </span>Exercise<span class="_ _2"> </span>2</div><div class="t m0 x2 h4 y3 ff3 fs2 fc0 sc0 ls0 ws0">Pro<span class="_ _3"></span>cessor<span class="_ _4"> </span>Circuit</div><div class="t m0 x3 h5 y4 ff1 fs1 fc0 sc0 ls0 ws0">In<span class="_ _1"></span>tro<span class="_ _3"></span>duction</div><div class="t m0 x3 h6 y5 ff4 fs3 fc0 sc0 ls0 ws0">The<span class="_ _5"> </span>purp<span class="_ _3"></span>ose<span class="_ _5"> </span>of<span class="_ _5"> </span>this<span class="_ _5"> </span>exercise<span class="_ _5"> </span>is<span class="_ _5"> </span>to<span class="_ _5"> </span>learn<span class="_ _5"> </span>in<span class="_ _5"> </span>detail<span class="_ _5"> </span>ho<span class="_ _1"></span>w<span class="_ _5"> </span>a<span class="_ _5"> </span>processor<span class="_ _5"> </span>works:<span class="_ _0"> </span>how<span class="_ _5"> </span>a</div><div class="t m0 x3 h6 y6 ff4 fs3 fc0 sc0 ls0 ws0">digital<span class="_"> </span>circuit<span class="_ _6"> </span>can<span class="_"> </span>execute<span class="_ _6"> </span>instructions<span class="_"> </span>and<span class="_ _6"> </span>run<span class="_"> </span>programs.<span class="_ _0"> </span>The<span class="_"> </span>exercise<span class="_ _6"> </span>requires</div><div class="t m0 x3 h6 y7 ff4 fs3 fc0 sc0 ls0 ws0">y<span class="_ _1"></span>ou<span class="_ _0"> </span>to<span class="_ _7"> </span>understand<span class="_ _7"> </span>a<span class="_ _0"> </span>w<span class="_ _1"></span>orking<span class="_ _7"> </span>circuit<span class="_ _0"> </span>called<span class="_ _7"> </span>M1<span class="_ _0"> </span>that<span class="_ _7"> </span>implemen<span class="_ _1"></span>ts<span class="_ _0"> </span>the<span class="_ _7"> </span>Sigma16</div><div class="t m0 x3 h6 y8 ff4 fs3 fc0 sc0 ls0 ws0">arc<span class="_ _1"></span>hitecture,<span class="_ _5"> </span>and<span class="_ _6"> </span>then<span class="_ _5"> </span>to<span class="_ _5"> </span>work<span class="_ _6"> </span>out<span class="_ _6"> </span>how<span class="_ _6"> </span>to<span class="_ _5"> </span>mo<span class="_ _3"></span>dify<span class="_ _6"> </span>it.</div><div class="t m0 x3 h5 y9 ff1 fs1 fc0 sc0 ls0 ws0">P<span class="_ _1"></span>art<span class="_ _4"> </span>1.<span class="_ _8"> </span>Implemen<span class="_ _1"></span>ting<span class="_ _4"> </span>a<span class="_ _9"> </span>new<span class="_ _4"> </span>instruction:<span class="_ _8"> </span>loadxi</div><div class="t m0 x3 h6 ya ff4 fs3 fc0 sc0 ls0 ws0">Add<span class="_ _5"> </span>a<span class="_ _7"> </span>new<span class="_ _5"> </span>instruction<span class="_ _5"> </span><span class="ff5">loadxi<span class="_ _7"> </span></span>to<span class="_ _6"> </span>the<span class="_ _7"> </span>M1<span class="_ _5"> </span>circuit<span class="_ _5"> </span>for<span class="_ _7"> </span>the<span class="_ _5"> </span>Sigma16<span class="_ _5"> </span>architecture.</div><div class="t m0 x3 h6 yb ff4 fs3 fc0 sc0 ls0 ws0">Mo<span class="_ _3"></span>dify<span class="_ _7"> </span>the<span class="_ _0"> </span>datapath<span class="_ _0"> </span>and<span class="_ _7"> </span>control,<span class="_ _0"> </span>as<span class="_ _7"> </span>needed,<span class="_ _2"> </span>in<span class="_ _7"> </span>order<span class="_ _0"> </span>to<span class="_ _0"> </span>implemen<span class="_ _1"></span>t<span class="_ _0"> </span>the<span class="_ _7"> </span>new</div><div class="t m0 x3 h6 yc ff4 fs3 fc0 sc0 ls0 ws0">instruction<span class="_"> </span>in<span class="_ _6"> </span>the<span class="_"> </span>M1<span class="_ _6"> </span>circuit,<span class="_"> </span>and<span class="_ _6"> </span>modify<span class="_ _6"> </span>the<span class="_"> </span>simulation<span class="_"> </span>driver<span class="_"> </span>so<span class="_"> </span>the<span class="_ _6"> </span>operation</div><div class="t m0 x3 h6 yd ff4 fs3 fc0 sc0 ls0 ws0">of<span class="_ _a"> </span>the<span class="_ _a"> </span>instruction<span class="_ _a"> </span>can<span class="_ _a"> </span>b<span class="_ _3"></span>e<span class="_ _a"> </span>observ<span class="_ _1"></span>ed.<span class="_ _7"> </span>Demonstrate<span class="_"> </span>the<span class="_ _a"> </span>execution<span class="_ _a"> </span>of<span class="_ _a"> </span>the<span class="_ _a"> </span>instruction</div><div class="t m0 x3 h6 ye ff4 fs3 fc0 sc0 ls0 ws0">using<span class="_ _6"> </span>a<span class="_ _5"> </span>machine<span class="_ _6"> </span>language<span class="_ _5"> </span>test<span class="_ _6"> </span>program.</div><div class="t m0 x4 h6 yf ff4 fs3 fc0 sc0 ls0 ws0">The<span class="_ _0"> </span>new<span class="_ _0"> </span>instruction<span class="_ _0"> </span>is<span class="_ _2"> </span><span class="ff6">lo<span class="_ _b"></span>ad<span class="_ _0"> </span>with<span class="_ _2"> </span>automatic<span class="_ _0"> </span>index<span class="_ _2"> </span>incr<span class="_ _b"></span>ement<span class="_ _9"> </span><span class="ff4">(the<span class="_ _2"> </span><span class="ff5">loadxi</span></span></span></div><div class="t m0 x3 h6 y10 ff4 fs3 fc0 sc0 ls0 ws0">instruction).<span class="_ _9"> </span>Its<span class="_ _7"> </span>format<span class="_ _5"> </span>is<span class="_ _7"> </span>RX:<span class="_ _5"> </span>there<span class="_ _c"> </span>are<span class="_ _c"> </span>t<span class="_ _1"></span>wo<span class="_ _5"> </span>words;<span class="_ _c"> </span>the<span class="_ _5"> </span>first<span class="_ _c"> </span>word<span class="_ _5"> </span>has<span class="_ _c"> </span>a<span class="_ _c"> </span>4-bit</div><div class="t m0 x3 h6 y11 ff4 fs3 fc0 sc0 ls0 ws0">op<span class="_ _3"></span>code<span class="_ _6"> </span>f,<span class="_ _5"> </span>a<span class="_ _5"> </span>4-bit<span class="_ _6"> </span>destination<span class="_ _5"> </span>register<span class="_ _6"> </span>(the<span class="_ _5"> </span>d<span class="_ _6"> </span>field),<span class="_ _5"> </span>a<span class="_ _6"> </span>4-bit<span class="_ _5"> </span>index<span class="_ _6"> </span>register<span class="_ _5"> </span>(the<span class="_ _6"> </span>sa</div><div class="t m0 x3 h6 y12 ff4 fs3 fc0 sc0 ls0 ws0">field),<span class="_ _6"> </span>and<span class="_ _5"> </span>a<span class="_ _5"> </span>4-bit<span class="_ _5"> </span>secondary<span class="_ _5"> </span>op<span class="_ _3"></span>code<span class="_ _5"> </span>of<span class="_ _5"> </span>f<span class="_ _5"> </span>(the<span class="_ _5"> </span>sb<span class="_ _6"> </span>field).<span class="_ _2"> </span>As<span class="_ _6"> </span>with<span class="_ _5"> </span>all<span class="_ _5"> </span>RX<span class="_ _6"> </span>instruc-</div><div class="t m0 x3 h6 y13 ff4 fs3 fc0 sc0 ls0 ws0">tions,<span class="_"> </span>the<span class="_ _6"> </span>second<span class="_"> </span>word<span class="_"> </span>is<span class="_"> </span>a<span class="_"> </span>16-bit<span class="_ _6"> </span>constan<span class="_ _1"></span>t<span class="_"> </span>called<span class="_ _6"> </span>the<span class="_"> </span>displacement.<span class="_ _7"> </span>In<span class="_"> </span>assembly</div><div class="t m0 x3 h6 y14 ff4 fs3 fc0 sc0 ls0 ws0">language<span class="_ _6"> </span>the<span class="_ _5"> </span>instruction<span class="_ _5"> </span>is<span class="_ _5"> </span>written,<span class="_ _6"> </span>for<span class="_ _5"> </span>example,<span class="_ _5"> </span>as<span class="_ _5"> </span>loadxi<span class="_ _6"> </span>R1,$12ab[R2].</div><div class="t m0 x4 h6 y15 ff4 fs3 fc0 sc0 ls0 ws0">The<span class="_"> </span>effect<span class="_ _a"> </span>of<span class="_"> </span>executing<span class="_ _a"> </span>the<span class="_ _a"> </span>instruction<span class="_"> </span>is<span class="_ _a"> </span>to<span class="_ _a"> </span>p<span class="_ _3"></span>erform<span class="_ _a"> </span>a<span class="_ _a"> </span>load,<span class="_"> </span>and<span class="_"> </span>also<span class="_ _a"> </span>to<span class="_ _a"> </span>incre-</div><div class="t m0 x3 h6 y16 ff4 fs3 fc0 sc0 ls0 ws0">men<span class="_ _1"></span>t<span class="_ _6"> </span>the<span class="_ _5"> </span>index<span class="_ _6"> </span>register<span class="_ _6"> </span>automatically<span class="_ _b"></span>.<span class="_ _0"> </span>The<span class="_ _6"> </span>effectiv<span class="_ _1"></span>e<span class="_ _6"> </span>address<span class="_ _6"> </span>is<span class="_ _5"> </span>calculated<span class="_ _6"> </span>using</div><div class="t m0 x3 h6 y17 ff4 fs3 fc0 sc0 ls0 ws0">the<span class="_ _7"> </span>old<span class="_ _7"> </span>v<span class="_ _b"></span>alue<span class="_ _7"> </span>of<span class="_ _7"> </span>the<span class="_ _7"> </span>index<span class="_ _7"> </span>register<span class="_ _7"> </span>(i.e.<span class="_ _d"> </span>the<span class="_ _7"> </span>v<span class="_ _b"></span>alue<span class="_ _7"> </span>b<span class="_ _3"></span>efore<span class="_ _c"> </span>it<span class="_ _0"> </span>w<span class="_ _b"></span>as<span class="_ _7"> </span>incremented).</div><div class="t m0 x3 h6 y18 ff4 fs3 fc0 sc0 ls0 ws0">Th<span class="_ _1"></span>us<span class="_ _c"> </span>the<span class="_ _5"> </span>instruction<span class="_ _c"> </span>loadxi<span class="_ _c"> </span>R1,$12ab[R2]<span class="_ _5"> </span>p<span class="_ _3"></span>erforms<span class="_ _c"> </span>R1<span class="_ _5"> </span>:=<span class="_ _c"> </span>mem[12ab+R2],<span class="_ _c"> </span>R2</div><div class="t m0 x3 h6 y19 ff4 fs3 fc0 sc0 ls0 ws0">:=<span class="_ _6"> </span>R2+1.</div><div class="t m0 x4 h6 y1a ff4 fs3 fc0 sc0 ls0 ws0">(Historical<span class="_ _0"> </span>note:<span class="_ _e"> </span>man<span class="_ _1"></span>y<span class="_ _0"> </span>real<span class="_ _0"> </span>computers<span class="_ _0"> </span>ha<span class="_ _b"></span>ve<span class="_ _0"> </span>this<span class="_ _7"> </span>instruction.<span class="_ _f"> </span>The<span class="_ _0"> </span>idea<span class="_ _0"> </span>is</div><div class="t m0 x3 h6 y1b ff4 fs3 fc0 sc0 ls0 ws0">that<span class="_ _5"> </span>computers<span class="_ _c"> </span>spend<span class="_ _c"> </span>a<span class="_ _5"> </span>lot<span class="_ _c"> </span>of<span class="_ _5"> </span>time<span class="_ _c"> </span>iterating<span class="_ _5"> </span>ov<span class="_ _b"></span>er<span class="_ _c"> </span>arra<span class="_ _1"></span>ys,<span class="_ _c"> </span>and<span class="_ _5"> </span>in<span class="_ _5"> </span>each<span class="_ _5"> </span>iteration</div><div class="t m0 x3 h6 y1c ff4 fs3 fc0 sc0 ls0 ws0">y<span class="_ _1"></span>ou<span class="_"> </span>need<span class="_"> </span>to<span class="_"> </span>load<span class="_"> </span><span class="ff7">x</span>[<span class="ff7">i</span>]<span class="_"> </span>in<span class="_ _1"></span>to<span class="_"> </span>a<span class="_"> </span>register<span class="_"> </span>and<span class="_"> </span>also<span class="_"> </span>increment<span class="_ _a"> </span><span class="ff7">i</span>.<span class="_ _7"> </span>The<span class="_"> </span>loadxi<span class="_"> </span>instruction</div><div class="t m0 x3 h6 y1d ff4 fs3 fc0 sc0 ls0 ws0">lets<span class="_ _6"> </span>you<span class="_ _6"> </span>do<span class="_ _5"> </span>this<span class="_ _5"> </span>w<span class="_ _1"></span>ork<span class="_ _5"> </span>in<span class="_ _6"> </span>one<span class="_ _5"> </span>instruction<span class="_ _5"> </span>rather<span class="_ _5"> </span>than<span class="_ _5"> </span>t<span class="_ _1"></span>wo.)</div><div class="t m0 x4 h6 y1e ff4 fs3 fc0 sc0 ls0 ws0">T<span class="_ _b"></span>est<span class="_"> </span>y<span class="_ _b"></span>our<span class="_"> </span>new<span class="_ _6"> </span>instruction<span class="_"> </span>using<span class="_"> </span>a<span class="_"> </span>mac<span class="_ _1"></span>hine<span class="_"> </span>language<span class="_"> </span>program<span class="_"> </span>that<span class="_"> </span>calculates</div><div class="t m0 x3 h6 y1f ff4 fs3 fc0 sc0 ls0 ws0">the<span class="_"> </span>sum<span class="_"> </span>of<span class="_ _6"> </span>the<span class="_"> </span>elements<span class="_"> </span>of<span class="_"> </span>an<span class="_"> </span>array<span class="_"> </span>X,<span class="_"> </span>which<span class="_"> </span>con<span class="_ _1"></span>tains<span class="_"> </span><span class="ff7">n<span class="_ _6"> </span></span>elemen<span class="_ _1"></span>ts<span class="_"> </span>(this<span class="_ _6"> </span>program</div><div class="t m0 x3 h6 y20 ff4 fs3 fc0 sc0 ls0 ws0">is<span class="_ _7"> </span>one<span class="_ _0"> </span>of<span class="_ _7"> </span>the<span class="_ _7"> </span>unassessed<span class="_ _0"> </span>exercises,<span class="_ _0"> </span>and<span class="_ _7"> </span>y<span class="_ _1"></span>ou<span class="_ _0"> </span>ma<span class="_ _b"></span>y<span class="_ _0"> </span>use<span class="_ _7"> </span>the<span class="_ _7"> </span>mo<span class="_ _3"></span>del<span class="_ _7"> </span>solution).<span class="_ _8"> </span>T<span class="_ _b"></span>o</div><div class="t m0 x3 h6 y21 ff4 fs3 fc0 sc0 ls0 ws0">do<span class="_ _6"> </span>this,<span class="_ _5"> </span>start<span class="_ _6"> </span>with<span class="_ _5"> </span>a<span class="_ _6"> </span>program<span class="_ _6"> </span>that<span class="_ _5"> </span>simply<span class="_ _6"> </span>calculates<span class="_ _5"> </span>the<span class="_ _6"> </span>sum<span class="_ _5"> </span>using<span class="_ _6"> </span>an<span class="_ _5"> </span>ordinary</div><div class="t m0 x3 h6 y22 ff4 fs3 fc0 sc0 ls0 ws0">iteration,<span class="_ _6"> </span>with<span class="_ _5"> </span>an<span class="_ _5"> </span>index<span class="_ _6"> </span><span class="ff7">i<span class="_ _5"> </span></span>that<span class="_ _5"> </span>go<span class="_ _3"></span>es<span class="_ _6"> </span>from<span class="_ _5"> </span>0<span class="_ _6"> </span>to<span class="_ _5"> </span><span class="ff7">n<span class="_ _a"> </span><span class="ff8">−<span class="_ _10"> </span></span></span>1.<span class="_ _0"> </span>Then<span class="_ _6"> </span>change<span class="_ _6"> </span>the<span class="_ _5"> </span>program</div><div class="t m0 x3 h6 y23 ff4 fs3 fc0 sc0 ls0 ws0">b<span class="_ _1"></span>y<span class="_"> </span>replacing<span class="_ _6"> </span>the<span class="_"> </span>load<span class="_"> </span>instruction<span class="_ _6"> </span>for<span class="_"> </span><span class="ff7">x</span>[<span class="ff7">i</span>]<span class="_ _6"> </span>b<span class="_ _1"></span>y<span class="_"> </span>a<span class="_ _6"> </span>loadxi<span class="_"> </span>instruction,<span class="_ _6"> </span>and<span class="_"> </span>getting<span class="_"> </span>rid</div><div class="t m0 x3 h6 y24 ff4 fs3 fc0 sc0 ls0 ws0">of<span class="_"> </span>the<span class="_"> </span>explicit<span class="_"> </span>add<span class="_ _6"> </span>instruction<span class="_"> </span>to<span class="_"> </span>increment<span class="_"> </span><span class="ff7">i</span>.<span class="_ _7"> </span>Run<span class="_"> </span>the<span class="_ _6"> </span>modified<span class="_ _6"> </span>program<span class="_"> </span>on<span class="_"> </span>the</div><div class="t m0 x3 h6 y25 ff4 fs3 fc0 sc0 ls0 ws0">circuit,<span class="_ _6"> </span>and<span class="_ _5"> </span>verify<span class="_ _6"> </span>that<span class="_ _5"> </span>it<span class="_ _6"> </span>gets<span class="_ _5"> </span>the<span class="_ _5"> </span>correct<span class="_ _5"> </span>result.</div><div class="t m0 x4 h6 y26 ff4 fs3 fc0 sc0 ls0 ws0">If<span class="_ _5"> </span>you<span class="_ _6"> </span>simply<span class="_ _5"> </span>remov<span class="_ _1"></span>e<span class="_ _5"> </span>the<span class="_ _5"> </span>add<span class="_ _5"> </span>instruction<span class="_ _5"> </span>that<span class="_ _c"> </span>incremen<span class="_ _1"></span>ts<span class="_ _5"> </span><span class="ff7">i<span class="_ _5"> </span></span>from<span class="_ _5"> </span>the<span class="_ _c"> </span>model</div><div class="t m0 x3 h6 y27 ff4 fs3 fc0 sc0 ls0 ws0">solution,<span class="_ _a"> </span>the<span class="_ _10"> </span>subsequent<span class="_ _10"> </span>memory<span class="_ _10"> </span>addresses<span class="_ _a"> </span>will<span class="_ _10"> </span>shift<span class="_ _a"> </span>do<span class="_ _b"></span>wn,<span class="_"> </span>whic<span class="_ _b"></span>h<span class="_ _a"> </span>is<span class="_ _10"> </span>inconv<span class="_ _b"></span>enient</div><div class="t m0 x3 h6 y28 ff4 fs3 fc0 sc0 ls0 ws0">for<span class="_ _0"> </span>comparing<span class="_ _0"> </span>the<span class="_ _0"> </span>execution<span class="_ _2"> </span>of<span class="_ _0"> </span>the<span class="_ _0"> </span>tw<span class="_ _b"></span>o<span class="_ _2"> </span>v<span class="_ _b"></span>ersions<span class="_ _2"> </span>of<span class="_ _0"> </span>the<span class="_ _0"> </span>program.<span class="_ _11"> </span>Instead<span class="_ _0"> </span>of</div><div class="t m0 x3 h6 y29 ff4 fs3 fc0 sc0 ls0 ws0">deleting<span class="_"> </span>the<span class="_"> </span>instruction,<span class="_"> </span>just<span class="_"> </span>replace<span class="_"> </span>it<span class="_ _a"> </span>with<span class="_"> </span>something<span class="_"> </span>lik<span class="_ _b"></span>e<span class="_"> </span>add<span class="_"> </span>R0,R0,R0<span class="_"> </span>whic<span class="_ _1"></span>h</div><div class="t m0 x3 h6 y2a ff4 fs3 fc0 sc0 ls0 ws0">w<span class="_ _1"></span>on’t<span class="_ _c"> </span>do<span class="_ _c"> </span>an<span class="_ _1"></span>ything<span class="_ _c"> </span>and<span class="_ _5"> </span>will<span class="_ _c"> </span>leav<span class="_ _b"></span>e<span class="_ _c"> </span>all<span class="_ _c"> </span>the<span class="_ _c"> </span>instructions<span class="_ _5"> </span>and<span class="_ _c"> </span>data<span class="_ _c"> </span>v<span class="_ _b"></span>alues<span class="_ _c"> </span>with<span class="_ _c"> </span>the</div><div class="t m0 x3 h6 y2b ff4 fs3 fc0 sc0 ls0 ws0">same<span class="_ _6"> </span>address<span class="_ _5"> </span>as<span class="_ _5"> </span>b<span class="_ _3"></span>efore.</div><div class="t m0 x5 h6 y2c ff4 fs3 fc0 sc0 ls0 ws0">1</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div><div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="/image.php?url=https://csdnimg.cn/release/download_crawler_static/89616993/bg2.jpg"><div class="t m0 x3 h5 y1 ff1 fs1 fc0 sc0 ls0 ws0">P<span class="_ _b"></span>art<span class="_ _9"> </span>2.<span class="_ _8"> </span>Implemen<span class="_ _b"></span>ting<span class="_ _9"> </span>logic<span class="_ _9"> </span>instructions</div><div class="t m0 x3 h6 y2d ff4 fs3 fc0 sc0 ls0 ws0">The<span class="_ _7"> </span>M1<span class="_ _0"> </span>circuit<span class="_ _0"> </span>implemen<span class="_ _b"></span>ts<span class="_ _0"> </span>sev<span class="_ _1"></span>eral<span class="_ _0"> </span>RRR<span class="_ _7"> </span>instructions,<span class="_ _0"> </span>but<span class="_ _0"> </span>it<span class="_ _7"> </span>leav<span class="_ _1"></span>es<span class="_ _7"> </span>the<span class="_ _0"> </span>RRR</div><div class="t m0 x3 h6 y2e ff4 fs3 fc0 sc0 ls0 ws0">instructions<span class="_"> </span>with<span class="_ _a"> </span>opco<span class="_ _3"></span>des<span class="_ _a"> </span>5,<span class="_"> </span>6,<span class="_"> </span>7,<span class="_"> </span>8<span class="_ _a"> </span>as<span class="_ _a"> </span>unimplemen<span class="_ _1"></span>ted.<span class="_ _7"> </span>Mo<span class="_ _3"></span>dify<span class="_ _a"> </span>M1<span class="_"> </span>to<span class="_ _a"> </span>implemen<span class="_ _b"></span>t</div><div class="t m0 x3 h6 y2f ff4 fs3 fc0 sc0 ls0 ws0">the<span class="_"> </span>following<span class="_"> </span><span class="ff6">new<span class="_ _7"> </span></span>RRR<span class="_ _6"> </span>instructions.<span class="_ _0"> </span>These<span class="_"> </span>are<span class="_ _6"> </span>&#8220;bit<span class="_ _1"></span>wise<span class="_ _6"> </span>logic&#8221;<span class="_"> </span>instructions:<span class="_ _0"> </span>bit</div><div class="t m0 x3 h6 y30 ff7 fs3 fc0 sc0 ls0 ws0">i<span class="_ _6"> </span><span class="ff4">in<span class="_ _5"> </span>the<span class="_ _5"> </span>result<span class="_ _5"> </span>dep<span class="_ _3"></span>ends<span class="_ _6"> </span>on<span class="_ _5"> </span>bit<span class="_ _6"> </span></span>i<span class="_ _5"> </span><span class="ff4">in<span class="_ _5"> </span>the<span class="_ _5"> </span>op<span class="_ _3"></span>erands.</span></div><div class="t m0 x4 h6 y31 ff8 fs3 fc0 sc0 ls0 ws0">&#8226;<span class="_ _2"> </span><span class="ff4">inv<span class="_ _6"> </span>R1,R2.<span class="_ _0"> </span>Op<span class="_ _3"></span>code<span class="_ _5"> </span>5.<span class="_ _0"> </span>Meaning<span class="_ _6"> </span>is<span class="_ _5"> </span>R1<span class="_ _5"> </span>:=<span class="_ _6"> </span>inv<span class="_ _6"> </span>R2</span></div><div class="t m0 x4 h6 y32 ff8 fs3 fc0 sc0 ls0 ws0">&#8226;<span class="_ _2"> </span><span class="ff4">and<span class="_ _5"> </span>R1,R2,R3.<span class="_ _0"> </span>Opco<span class="_ _3"></span>de<span class="_ _5"> </span>6.<span class="_ _0"> </span>Meaning<span class="_ _6"> </span>is<span class="_ _5"> </span>R1<span class="_ _5"> </span>:=<span class="_ _6"> </span>R2<span class="_ _5"> </span>AND<span class="_ _5"> </span>R3.</span></div><div class="t m0 x4 h6 y33 ff8 fs3 fc0 sc0 ls0 ws0">&#8226;<span class="_ _2"> </span><span class="ff4">or<span class="_ _5"> </span>R1,R2,R3.<span class="_ _0"> </span>Opco<span class="_ _3"></span>de<span class="_ _5"> </span>7.<span class="_ _0"> </span>Meaning<span class="_ _6"> </span>is<span class="_ _5"> </span>R1<span class="_ _5"> </span>:=<span class="_ _6"> </span>R2<span class="_ _5"> </span>OR<span class="_ _5"> </span>R3.</span></div><div class="t m0 x4 h6 y34 ff8 fs3 fc0 sc0 ls0 ws0">&#8226;<span class="_ _2"> </span><span class="ff4">xor<span class="_ _5"> </span>R1,R2,R3.<span class="_ _0"> </span>Opco<span class="_ _3"></span>de<span class="_ _5"> </span>8.<span class="_ _0"> </span>Meaning<span class="_ _6"> </span>is<span class="_ _5"> </span>R1<span class="_ _5"> </span>:=<span class="_ _6"> </span>R2<span class="_ _5"> </span>XOR<span class="_ _6"> </span>R3.</span></div><div class="t m0 x4 h6 y35 ff4 fs3 fc0 sc0 ls0 ws0">Note<span class="_ _6"> </span>that<span class="_ _5"> </span>you<span class="_ _6"> </span>are<span class="_ _6"> </span>implementing<span class="_ _6"> </span>these<span class="_ _6"> </span>machine<span class="_ _6"> </span>language<span class="_ _6"> </span>instructions<span class="_ _5"> </span>in<span class="_ _6"> </span>the</div><div class="t m0 x3 h6 y36 ff4 fs3 fc0 sc0 ls0 ws0">M1<span class="_ _10"> </span>circuit,<span class="_"> </span>but<span class="_ _10"> </span>the<span class="_ _10"> </span>assembler<span class="_ _10"> </span>in<span class="_ _a"> </span>the<span class="_ _10"> </span>Sigma16<span class="_ _a"> </span>em<span class="_ _b"></span>ulator<span class="_ _a"> </span>doesn&#8217;t<span class="_ _a"> </span>kno<span class="_ _1"></span>w<span class="_ _10"> </span>ab<span class="_ _3"></span>out<span class="_ _10"> </span>them.</div><div class="t m0 x3 h6 y37 ff4 fs3 fc0 sc0 ls0 ws0">Y<span class="_ _b"></span>ou<span class="_ _5"> </span>can<span class="_ _c"> </span>generate<span class="_ _7"> </span>these<span class="_ _c"> </span>new<span class="_ _c"> </span>instructions<span class="_ _c"> </span>in<span class="_ _c"> </span>an<span class="_ _c"> </span>assembly<span class="_ _c"> </span>language<span class="_ _c"> </span>program<span class="_ _c"> </span>b<span class="_ _1"></span>y</div><div class="t m0 x3 h6 y38 ff4 fs3 fc0 sc0 ls0 ws0">writing<span class="_ _6"> </span>out<span class="_ _5"> </span>the<span class="_ _5"> </span>machine<span class="_ _6"> </span>language<span class="_ _6"> </span>in<span class="_ _5"> </span>a<span class="_ _5"> </span>data<span class="_ _5"> </span>statemen<span class="_ _1"></span>t.<span class="_ _0"> </span>F<span class="_ _b"></span>or<span class="_ _6"> </span>example:</div><div class="t m0 x6 h7 y39 ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _12"> </span>$5120<span class="_ _13"> </span>;<span class="_ _4"> </span>inv<span class="_ _4"> </span>R1,R2</div><div class="t m0 x6 h7 y3a ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _12"> </span>$83c5<span class="_ _13"> </span>;<span class="_ _4"> </span>xor<span class="_ _4"> </span>R3,R12,R5</div><div class="t m0 x4 h6 y3b ff4 fs3 fc0 sc0 ls0 ws0">Remem<span class="_ _1"></span>b<span class="_ _3"></span>er<span class="_ _5"> </span>that<span class="_ _c"> </span>the<span class="_ _5"> </span>M1<span class="_ _c"> </span>circuit<span class="_ _5"> </span>implements<span class="_ _5"> </span>only<span class="_ _c"> </span>the<span class="_ _5"> </span>Core<span class="_ _c"> </span>Sigma16<span class="_ _5"> </span>instruc-</div><div class="t m0 x3 h6 y3c ff4 fs3 fc0 sc0 ls0 ws0">tion<span class="_ _5"> </span>set,<span class="_ _c"> </span>but<span class="_ _5"> </span>the<span class="_ _5"> </span>full<span class="_ _c"> </span>Sigma16<span class="_ _5"> </span>has<span class="_ _5"> </span>additional<span class="_ _c"> </span>instructions,<span class="_ _5"> </span>including<span class="_ _5"> </span>some<span class="_ _c"> </span>logic</div><div class="t m0 x3 h6 y3d ff4 fs3 fc0 sc0 ls0 ws0">instructions<span class="_ _6"> </span>which<span class="_ _6"> </span>are<span class="_ _6"> </span>di&#64256;eren<span class="_ _1"></span>t<span class="_ _6"> </span>from<span class="_ _5"> </span>the<span class="_ _6"> </span>ones<span class="_ _6"> </span>describ<span class="_ _3"></span>ed<span class="_ _6"> </span>here.<span class="_ _0"> </span><span class="ff6">Warning:<span class="_ _0"> </span>do<span class="_ _5"> </span>not</span></div><div class="t m0 x3 h8 y3e ff6 fs3 fc0 sc0 ls0 ws0">use<span class="_ _5"> </span>Sigma16<span class="_ _c"> </span>lo<span class="_ _b"></span>gic<span class="_ _c"> </span>instructions<span class="_ _5"> </span>in<span class="_ _c"> </span>your<span class="_ _5"> </span>test<span class="_ _c"> </span>pr<span class="_ _b"></span>o<span class="_ _b"></span>gr<span class="_ _1"></span>am!</div><div class="t m0 x4 h6 y3f ff4 fs3 fc0 sc0 ls0 ws0">Here<span class="_ _6"> </span>is<span class="_ _5"> </span>a<span class="_ _5"> </span>test<span class="_ _5"> </span>program<span class="_ _6"> </span><span class="ff5">TestLogic.asm.txt<span class="_ _5"> </span></span>for<span class="_ _5"> </span>your<span class="_ _6"> </span>mo<span class="_ _3"></span>di&#64257;ed<span class="_ _6"> </span>circuit:</div><div class="t m0 x3 h7 y40 ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _4"> </span>Test<span class="_ _4"> </span>the<span class="_ _4"> </span>new<span class="_ _4"> </span>logic<span class="_ _4"> </span>instructions<span class="_ _4"> </span>for<span class="_ _4"> </span>Assessed<span class="_ _9"> </span>Exercise</div><div class="t m0 x3 h7 y41 ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _4"> </span>Test<span class="_ _4"> </span>data</div><div class="t m0 x7 h7 y42 ff5 fs3 fc0 sc0 ls0 ws0">lea<span class="_ _12"> </span>R1,$0003[R0]<span class="_ _14"> </span>;<span class="_ _4"> </span>R1<span class="_ _4"> </span>:=<span class="_ _4"> </span>0003</div><div class="t m0 x7 h7 y43 ff5 fs3 fc0 sc0 ls0 ws0">lea<span class="_ _12"> </span>R2,$0005[R0]<span class="_ _14"> </span>;<span class="_ _4"> </span>R2<span class="_ _4"> </span>:=<span class="_ _4"> </span>0005</div><div class="t m0 x3 h7 y44 ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _4"> </span>Logic<span class="_ _4"> </span>instructions</div><div class="t m0 x7 h7 y45 ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _15"> </span>$5312<span class="_ _16"> </span>;<span class="_ _4"> </span>inv<span class="_ _4"> </span>R3,R1<span class="_ _13"> </span>R3<span class="_ _4"> </span>:=<span class="_ _4"> </span>fffc</div><div class="t m0 x7 h7 y46 ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _15"> </span>$6412<span class="_ _16"> </span>;<span class="_ _4"> </span>and<span class="_ _4"> </span>R4,R1,R2<span class="_ _15"> </span>R4<span class="_ _4"> </span>:=<span class="_ _4"> </span>0001</div><div class="t m0 x7 h7 y47 ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _15"> </span>$7512<span class="_ _16"> </span>;<span class="_ _4"> </span>or<span class="_ _15"> </span>R5,R1,R2<span class="_ _15"> </span>R5<span class="_ _4"> </span>:=<span class="_ _4"> </span>0007</div><div class="t m0 x7 h7 y48 ff5 fs3 fc0 sc0 ls0 ws0">data<span class="_ _15"> </span>$8612<span class="_ _16"> </span>;<span class="_ _4"> </span>xor<span class="_ _4"> </span>R6,R1,R2<span class="_ _15"> </span>R6<span class="_ _4"> </span>:=<span class="_ _4"> </span>0006</div><div class="t m0 x7 h7 y49 ff5 fs3 fc0 sc0 ls0 ws0">trap<span class="_ _15"> </span>R0,R0,R0<span class="_ _17"> </span>;<span class="_ _4"> </span>terminate</div><div class="t m0 x3 h7 y4a ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _4"> </span>Expected<span class="_ _4"> </span>results<span class="_ _4"> </span>(use<span class="_ _4"> </span>regs<span class="_ _4"> </span>command<span class="_ _4"> </span>after<span class="_ _4"> </span>running<span class="_ _9"> </span>circuit)</div><div class="t m0 x3 h7 y4b ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R1<span class="_ _4"> </span>=<span class="_ _4"> </span>0003</div><div class="t m0 x3 h7 y4c ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R2<span class="_ _4"> </span>=<span class="_ _4"> </span>0005</div><div class="t m0 x3 h7 y4d ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R3<span class="_ _4"> </span>=<span class="_ _4"> </span>fffc</div><div class="t m0 x3 h7 y4e ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R4<span class="_ _4"> </span>=<span class="_ _4"> </span>0001</div><div class="t m0 x3 h7 y4f ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R5<span class="_ _4"> </span>=<span class="_ _4"> </span>0007</div><div class="t m0 x3 h7 y50 ff5 fs3 fc0 sc0 ls0 ws0">;<span class="_ _12"> </span>R6<span class="_ _4"> </span>=<span class="_ _4"> </span>0006</div><div class="t m0 x4 h6 y51 ff4 fs3 fc0 sc0 ls0 ws0">Here<span class="_ _6"> </span>is<span class="_ _5"> </span>the<span class="_ _5"> </span>ob<span class="_ _3"></span>ject<span class="_ _5"> </span>co<span class="_ _3"></span>de<span class="_ _6"> </span><span class="ff5">TestLogic.obj.txt</span>:</div><div class="t m0 x5 h6 y52 ff4 fs3 fc0 sc0 ls0 ws0">2</div></div><div class="pi" data-data='{"ctm":[1.611850,0.000000,0.000000,1.611850,0.000000,0.000000]}'></div></div>
100+评论
captcha
    类型标题大小时间
    ZIPalibabacloud-oss-cpp-sdk mingw编译版17.99MB8月前
    ZIP国外外企笔试面试题-例题363.96KB8月前
    ZIP课程设文档,C,C++,java103.14KB8月前
    ZIP帝国CMS7.5后台模板美化版GBK+UTF.zip2.15MB8月前
    ZIP人脸识别毕设,python400B8月前
    ZIP故障处理说明书 zishubuding34.71KB8月前
    ZIP基于web3和cnn的新闻分析系统6.76MB8月前
    ZIP一款摩尔斯电码发报练习软件Lakey141.12KB8月前