From b74929caefbfcf8fccfda9dd77ade4959d39b075 Mon Sep 17 00:00:00 2001 From: Zhang Fuxin Date: Wed, 27 Oct 2021 21:26:11 +0800 Subject: [PATCH] add generated png into repository to avoid regenerating them on each push(and triggered git actions) --- materials/chapter4/dynamic.S.png | Bin 0 -> 34143 bytes materials/chapter4/dynamic.c.png | Bin 0 -> 13669 bytes materials/chapter4/fun.c.png | Bin 0 -> 8349 bytes materials/chapter4/fun_la.S.png | Bin 0 -> 17945 bytes materials/chapter4/fun_mips.S.png | Bin 0 -> 26224 bytes materials/chapter4/keyboard_interrupt.txt.png | Bin 0 -> 23502 bytes materials/chapter4/normal.S.png | Bin 0 -> 15746 bytes materials/chapter4/normal.c.png | Bin 0 -> 7247 bytes materials/chapter4/simple.S.png | Bin 0 -> 6997 bytes materials/chapter4/simple.c.png | Bin 0 -> 3539 bytes materials/chapter4/simple_nofp.S.png | Bin 0 -> 3533 bytes materials/chapter4/syscall_write.S.png | Bin 0 -> 19615 bytes materials/chapter4/varg.c.png | Bin 0 -> 10448 bytes 13 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 materials/chapter4/dynamic.S.png create mode 100644 materials/chapter4/dynamic.c.png create mode 100644 materials/chapter4/fun.c.png create mode 100644 materials/chapter4/fun_la.S.png create mode 100644 materials/chapter4/fun_mips.S.png create mode 100644 materials/chapter4/keyboard_interrupt.txt.png create mode 100644 materials/chapter4/normal.S.png create mode 100644 materials/chapter4/normal.c.png create mode 100644 materials/chapter4/simple.S.png create mode 100644 materials/chapter4/simple.c.png create mode 100644 materials/chapter4/simple_nofp.S.png create mode 100644 materials/chapter4/syscall_write.S.png create mode 100644 materials/chapter4/varg.c.png diff --git a/materials/chapter4/dynamic.S.png b/materials/chapter4/dynamic.S.png new file mode 100644 index 0000000000000000000000000000000000000000..e75973a78cec1198983708f68647fbac3e551a6e GIT binary patch literal 34143 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 literal 0 HcmV?d00001 diff --git a/materials/chapter4/dynamic.c.png b/materials/chapter4/dynamic.c.png new file mode 100644 index 0000000000000000000000000000000000000000..6e0a8bdc16725bb5effe3f4a5e0d77cf5a9b4d56 GIT binary patch literal 13669 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 aLM34%1x7bom*DSHkd&CbXc_Enz<&Xkvzd$l literal 0 HcmV?d00001 diff --git a/materials/chapter4/fun.c.png b/materials/chapter4/fun.c.png new file mode 100644 index 0000000000000000000000000000000000000000..1bdeffe8cb6886fff7831f159484ca055c24a4da GIT binary patch literal 8349 zcma)hWmuG5*Y+qXV<3n~H_}RXDuN*0ASvD5EnNZv(%lT*4Wl9qol;W5&>ch9x4G}< zIlkj~-#_pCn0;M)@0n{~Yp;E-^IR)bURE6A5#b{U1cLEFLR1j~xho2;y`Xo&cc1Cz zTL^^Q@Pp`EW!Kd0Sr2t3lRB0?ZZ+q-6gVM&y2O60W#-UP)~=bV;KZePX2Em;MH;r3um64om9S3+(Fxm52TKp?Ar`YRfeQc|o>9zS|y|Ld;+DJEh+ zEbNi^lcx}f?9z3I^mN%Js{n?L>CUyHQCG9y+OiU1y~ zA7RIHDg}4dJ~|xHf=v&Hp=0N7DHi9MMn*rBLZQ7u&c zX4=?qPe=n{7I3y%f7cR?Yy?RLR>x&waKi@}^(8|A}>G(CoLmWk~ zWa_f>6-#7lO8LoQNMwGvXzrTn`R6;Ncki72K#M6aN6(P^Af2n1h^Vt-R;fKccIHdl zS>yQlDqfjkJ7&GsVuIy~g@r}6Ef)mx-6*=mIavqQpDjlzOfY7nJbTzgZ6xLGx{J;h z>UlA>ZDbPfm2j>-yqz8D``oQfpnX8|z9!-+K0lRV&~iN^M_89vw8BhbgwG%R#pn8y z4wu*aHuvGRo-+q4$18EGs@^v{Cp5_6O_XrK^08d{B(rx*({e{^YEF9{)38MiaH)6I zLVGEE`O7V92~Hk4#n&G?*Ps-w?=_Fcb?005Fp*F{?i-W6Ft@8kgcS3&*5Sv6Q!9J+1YD(dFD^Wb+x41+~ZoTQXWunIKL8Pl1)f2gB4Ttr%5$CNr`1;u9>>4#v5-a z&z>DFIc*lIs4zTv_vn7umt1kNb#Ck50Rfj>8PiR1Y|bU#onOkF94}AzRa8{U$@>S; zfe&$iGBT!7>y4Td;@kf#x@$GJaJg3;p+=-Zge5}7LuH@8^wK*H|I9tNGG^-9`9a)U z3WejoIfD{ID8++_Xm(B$a*I!{H@0bWTLGb>H1}_)&wlJEL9@isd)~1rO5hwE7MUO8 z>%arJ>C^E|RB`z2Cl7mF_>Kz{yEu~fw|i*lLq)v3t~GJw`h4EM?7lQH#(Bi&ES;7j zmBbT$y^r9iZ8G4Gg$?$MxO(L5*Gx1p z{1B119><0JYHW}3p9GyxwDU0a*VS=xrC3P`0DQqw?q%LYH7%qrOyKHnUdL#?&cNr{ zC)($xx`?PjZhK1$V}^;#wR7%0#T=_+AbgskBw(5C;E5&T-kL6YRmu`;YAp3lrgWiW3=nG?0P|B;u(2Bqe|*Kqxa*#-_1ebLYR29>T+aj6pj;Mj zb3U4{s

uf{rRQSox93R+Lg~Bsrz}L-nzZnt5EqgI$5E5h}s5A9fg#Sc+yU_Hi>m zm!44IoUS%#hTqJ8KjHJe1JWf{4icy|()lun>Bpzq2QZ0yPL=l!Qh;KRR z)-DC+iWI68?%d?4U$wkgmyt^;Dw6PjupS#zGdCweP7YHhna)!jnW{F-!+v;gDVb2w zv`~maQcXon$RoZ)KC?&CUgZTZn_@7QBEz%D*d`wa#HY*+^BC!%I%_W&p%-dcTs)H4 z&M}#qn))&Bs|s7|JCM(|CBhJUmiMX>LVy@DK{xGAmLymC!8=a*NH3ij7`{t(416+4yhHi7s_(x$|gd$ zzWH)kX?SB-O*6#&drNm}5^~ZYn9w_yMerwPX>m7G2~^^l$%_EIk{nlkD23hlk6i(i z`Y?0&Vc3P-N&=KZlrmx_!P~`2N9?a>n#h>W#i{BaJQ_?^uO``ocX#fP#?p>{lXN`i zaBF|SAYwZ5QrlaIn*6&#$D@rlFG4~L)}*x|3MXeS&_~4>t|*^*j1pa6SLT|2NB5F7 ziBvmGRm6`;I0GB^JsIyo9^c09E*T!)gj;l^kX&_PAsr`Y?S<8QSI9lc8`E(z$enU^ zJ-vn853$6R&=B=kxQ_x?+Is427k+||kT4wt(sEZ-h#jqb?q}d*5)QT~1aevc)5>cV&==(iA*}P0Ij3h!k05&!6AR~ZOYt>gf;l%VPhr!m{ zF@?95$(hpg-;gJ==>4=PZ{@O{;qiU*>4b+VeI<@jEjv5g)61(sHtoEZ89pf(8D3x} z|MBBl2cE8Jt;U78?Ka0mnRfV9&rFVDo$WpcCt-h+)8^f~cON_@cHQ_56C$2!v@D{; z{S)q()o_#BcuA|-Dc~3~0v9eSS1Z%VzB)hpXK`8bHTCtuK|yTzU#O+xYwGI$2!3NM2*rx&UG{%~@zYK# zXSgq!v-kGdG66%rXz1=f{69KIb5Sf@)yM|hWc$X;U!l*Z>upX>PBQpitaopUoJq#R zKb{;@a!v&RReZ0_ia4&wN@u`-vvL7z-RUAHx?Ha z)q;D^Hl)cG7~mT(MBrjk%7Cr8xm*=~@&JuOSxpV^`Ez8v8D)Sd2=<(-|KZ?3O` zF^G;Yn)ieJzj;pf8b)0c0T;8iAzCL(Mr zDMT!M8o|gOl%thcAR!`dYKkyG{;e+`PlG}5;VOUp+rGZv0fFngvsBtmxk6qVX&E;o zWc=p|6Ur_7bK{wL50y3|ZReBx9Nh!H%EEBl4yQ8ZR%IJ?ajM*}BYs+50(=Nb_$Axh4x?}At9fuP2E{GnO2>f zS(o|#biw9=sb`Eb0bfP3)a$Kh{n0T;Mn~~pYb?c^33;6>zr?m{ocZ(T4>SDI{_J3x zEvcj+sfi}Vn%y~LRS|!Z%zmW8_j+z2tE&&T^^6chPaVOdqXV}xVL|coCi|itEi7nX zm^xc0>Q^B{yMyRo62|#Cl^Dn!>Eny%u(9fl2P@m;ySNsfBvNeGM#*%-;*b&IH(q9o zx;?E(pC@u2-bZCs3rXFA^f*101_*lx2U^+G(|rWlNjLkaUy@2Ru~zeKUWY6FZEbDV zsWhRY8x!U8CK+DN04e|*JdvtyXh?jY^8)YoQ(sq?&gWFr)b!_SL=;-83-?B?4NKFo zb8@QW4A<1uH0UO$r>9eiM@mac9imXF0KbTAS}3qXE#*ezp1JZC4`3)sI}22{>OB$( z5zYJBMbeskq@lga-NunGyUQuyx>zfy+HPTKDgEKY2RS+2I?E(cN?y;?im`fiu}lt4 z4UL0?1JzOuv4YXwo}TQS99@rX&f**bG%C^L($Z1|1qI6JkoP$h0l&>_-;ess`Gm%- zOxwV%W+)gL8R_X^;@sV#G5N|25n*9X4y#Y&B*maGWrlibhoQ{3oSdA55uIQ26=5h8 zs)i4TVv>V>b42If`jLhftX&04ktUfF&G_X|>yiJQ>eU;n*!gMm<+5ZEU!1Unx3C#EHluZ-Y*P)@ZKU!~|NnR~>3Oe@YR zMK{!%!aHh*YK|j!FHKEND=RAti_O&xAJS*f7Phyyz0I8S$IK(5R+>L1JMyJ<8;*~S zbuS;xHoKrdc)*q{k__f&M>A%7TB_Z^ ziWQ9mnt-9&+&)!>?b$K6ptK9>mNOPOD!4+dB-;P=m-W@vN((${rpO>Y(#~26@IRfM zBjOR+3b3^e6~*@tIH~*@aAIO&0XF8oOqLMUXg#loElB~VaS~viV4*fOyNsJ06ONPw zqOhtMKGWUx4tgd_c*Fv)p(M|9?v zw?8#zc+5IA?yo~)RxpJxD~x(^nVFfNv`<35!A9CRb4xv^sIi%E zV^k}p_WP|2{Cw^ymN2Fk=FVv zO=Uv02=uj9!`HPqX`0wHVV}9kf`X9yVDM``zg-l^Lt%E13xGiXZ88%E z!5i`K-M*^;F@lkS0sJp}qaLfn{`F%dB8s~%Y47;h`*IR>a#?D>&oP+Fdm9HPbUdv7 z6+F&S$VD?%Rn_;RqNk^)zdAamT34t6|t6-?6CO0o{`%mpAU>K~dterL($01bbj7}z1`$Ii( zjQ)OpJG0H)j%!0>#cI>sZ1&q00ewqz7qZd=O}4n_j2#F>vyxOox_!I;O3xLZA=}i& zF5E`ltEI5ebRd=28FTrc#|H)miiwJT!sl{3SgNRCX->#@T;^cbY2k6&_{}}asS$(oR9V6*ec$D zh)>?+8ZS-7(qhlZDzSJcSX;k6_Ul4EVebq&0Bdk_YD3A{tU($CLtV`IY| zM}VR%x_joeWli*R=G4Gz$yc~i3~_%FqKRxX^xubEKYq{evhyV>$_2@R$E4M@Y!6;2 zDJhA7h-fq3EGRfQ;oCQ8pa@JkIXYSo(U(7X!8kSNTG-e)g+L%qslq!p))B@54ey^W z{(5X;SOt%nJvp5HoPxuijnZY2hbg~!@xmWnQ==_r$V~EO%+ z{3RBY??%CrKRfrMg2E5v{*#-?hzO%fb-|`Uv2PsDM0yjL%gf7cOie=~BS{5ZE4&hF zF+ZOAXyXZx?k4DZvwAK9uq73A|D6LbgE~e4asH#eree--zc|5$H#*L0)CH;EiWyhUb!x6 zQN=c%6g`hsVoq(mmJ|~cgTY|%)#)!4LlsiC{@0J|K67Z3W%=(?FRn1*h6jr1Nrr{) zX5Dx<^!9z}n#sBGQ~8>|N#(fLD!Mk~CNQ_#5<`)g1YpS)jpY`q-na_V8GD@UP`k^S z0N}EQp?7Ruo*fEb8LrwVfsW5eRAwRu2_Nc3N$*2&k5a}Ao7#07V+Pk{edGG7+S;=- zTYFrNw{uAf$6ekQmX=!W%rpY6{PZcvV?ru|W!TvPCk6tBl;0RefC>8kzN(uuCKhzB zd7oov3REEEvzPlGBqTUE7`X`UAY0@9`uP{N?0mO#72W0gfX@;V5s~2CriDLckm3N6 z)bQ{*4G$9z==d&FVJ-yPpZ+R`;LZMoNl6JLc9-lMNrEM0WR~q4j~|$dCB)98 zfTex6OI7Vl5czxsp)8+J5akFY%es;V&pAi$IuNNF29}lof zyV+UL9Yse&V+^n{9vyXjY+OC%rQUby>1}Jf2k^SoS`-QZ81Kc4DZ6h#eE;xApC+Rg zfo6f&nUIjevoI@HHEVYl?03U>&KVIS_rQ}hUW%c7n`)U9u5A#i9rFAJ(NR&?m2L#MC*!lMxYvMZq_s;M<2wj-(=;(-xi%Zi@V>NgWqSEV10+@0U#k(NK zGv&dhP7rO*4p)6Hw(A86=Rfs)qrbU6fp5F!y!G(7NanP_#>NJeYIr$shqjUXb~XMy zCdTnjLXUfYh&Tu0*F#AkRuEfij@6k37wGY-8yn@1z5O#i&3_Xk2*OUtGpb2TXHn5# zN1GGRL?rWK-scdwWDc7i9Ua9ZmTY-CeFoF`Pso_7<-426WIo#{Q+0Jes7!epGPI8%lx8)Ed1m@sA zK1Um405o_aO^l5J#3xDDd0iX>7oe3(7Zn#rM@L8Uw7DIw+^Q@v$Iwt619s5~q{|}D z4j{C;;6M&ZadECXcKLQI69yW42_J&=q(&)MUn|{zB@VMz137N^yvMF!09F)2v)Wij zUq4&607PQ;I7tjBv_fFzH%uwwrtXR>r#t6FSyMA*Su+#&=`TaJ>Z+~3%Y`~XV?q#gO}7Jn`GCV-XpePRJmOBeL8-0~eddpS)?3vx&LvW&*9+!o^{ zJv}`@TvG)Aj8IZk1adIpwI)rp1fa~8lO{j}f*2zXy}CRc1Y+@cf4|b}ve5yEPyUH` z!G4lf@t)q^)xIQydEY{1hNKzR?s4;4Wd@b<2_+a@duCv)YjAMz*jgw}u4)_j2-n|m_N`0VuIS3=V4N3VN>G=8i z$;rvV8)RmFA01^E6in+kejF%56FZe>O8xTX(&}n(U|<9>Z`I-P0PU1W>K+6N`QE6t zIqb=ggNrMh%mFLMy<_*NQvDUqqt`wr1C38;Kf;tXLL3%;0{R$O&cgzMu#kJQqLpRl z4SUBRm8GQJ5e+dlW zrE(v`?HU)@MAm$_d~M2@b-Uy)8HR_*A5eUAXN$WyiCjJwUye%lHf(BSt!6f?uCD|I zvY`R;o%u#YQB>07+X5h9e%v)i`+Iu;qv9l91|@v5dJJN}*T7kNl1NU-3?4y8#GliG z2nrz*?S5RZ>b2M|x%WpzDkm-0AEsi+<}Q4tDX9YL9@RyXusFY$5TBQ*l@)}28p*?C zrU*z!4&D@>!UvdmEUf$XFA(q-m*WR^y(!ZvYU!G1SIzS&U&LQxYd6^HO;s5Mk=^Pr zAkg&MgLn^!fjQUM2izb5Z;j+7z6n;JxXSaz+awe(i`$UBZo1N>tq2+qdb9g|XE!g} z48Jy~IuGxv{(;6ULKMns`Xv>{3(fK^@#XWH7;}mM+z()0gs_MO6DSVj76|sQAyAuI zPLA%gwgY<>;pImQiFHU@9vK-KfTHc~@3Q12@)R$c96<%c_R*>UB>Ojm9mbqn(XZ@k zbw|~?BY{SZxye5b%a^!FsV59MO^q7)->hCZzCx9a6k2o4nkv+6HB_OgA>DJidGkrv z?J%s>KkMeHbgS4q#Ioatb9$ccDHX^9K|eAw0%Gs<+&(b+KRce6A!TA?@HhjSl))Zx z^pL{we^d|%>S_0|56V}Aw;vL9udm5gap;?EMNcYRDk!rZZ6J#YR@tN@lkAw@or)%U z3J_3yLpjB)!Ay@%iu=Vl0hL@?SpgCmQ2v2_+J!q6IG*m?e`#6?9=oux zuhDfcC(q}a?hEw9Pnc3e!NOs|2q1V!j_oz_RaySL_k z%hli42E?YH-`zq(Fi9&`rbD`TERu+OU^wgcSI3pG#2?rPw?j!_sDOQX92?x&@@;mM zfGC!qzw-armICr!eM#*9UE8NIPcSn8y?6x>TXF%qf9eL9|DJdM+jIVT?;j2Re;C@m Zfy7C*Skwiz-4^vBAH-xu%S1l;{XeM*SMdM< literal 0 HcmV?d00001 diff --git a/materials/chapter4/fun_la.S.png b/materials/chapter4/fun_la.S.png new file mode 100644 index 0000000000000000000000000000000000000000..63757834cb4df8de368c1f0602633a59d95647f3 GIT binary patch literal 17945 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 Xu26KmJ&Pnn5hQ5|dGR7qo%jC-dU19M literal 0 HcmV?d00001 diff --git a/materials/chapter4/fun_mips.S.png b/materials/chapter4/fun_mips.S.png new file mode 100644 index 0000000000000000000000000000000000000000..d0bb0f41071ae7c95692abec4372924030e5aa73 GIT binary patch literal 26224 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 Ai~s-t literal 0 HcmV?d00001 diff --git a/materials/chapter4/keyboard_interrupt.txt.png b/materials/chapter4/keyboard_interrupt.txt.png new file mode 100644 index 0000000000000000000000000000000000000000..2c6a78aba7523991c488fb9144337cad57cd3d0e GIT binary patch literal 23502 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 literal 0 HcmV?d00001 diff --git a/materials/chapter4/normal.c.png b/materials/chapter4/normal.c.png new file mode 100644 index 0000000000000000000000000000000000000000..42b690ea0cb85fe62ab3ab6dd656e6242167c583 GIT binary patch literal 7247 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 YWW>Y2m&%R6i$ajPijH!X;;VrF0ZS8At^fc4 literal 0 HcmV?d00001 diff --git a/materials/chapter4/simple.S.png b/materials/chapter4/simple.S.png new file mode 100644 index 0000000000000000000000000000000000000000..a80a5f12ac26ac6a54170d73b0de361237c00fc5 GIT binary patch literal 6997 zcmbtZcRZEt|G$l*2-#av$m&F9_9`PJ+2fFzP1&n59!`>^<2+VKvW{ejkd?i%SCLIt z2;ukXd7kh0^?b+c_5I^_|8bxD<(&Jvulu?_pZ5}}qjmMvN#>IXf}B#jrmTw~gvxN8 zNJH_PRoJuWI&xi^ATx zyTZ5ZqTp4nhfDS^0&1@xfFblAEaB0 z%HyA`9lB45*K24!B~rUa5g-?gi||Z|`%0NADLMD^ebDiT_hBY)hIw6U2;joNG66o8 z{{QDwK?w_Y-wh27J%9dOVY$+IRE#}_fsRgeK7$BB40nC`314Mp+4ZEW^!N9hOG?3F z@R;x8dL}1>zt8t*mImy7U%;DHYI4VAO;W@Bo^4ugf373S){}A>EC2Ds2dAk@XCrJ> zGkGF-uP>FGhe!MO%MRo3?&TU3P>_*1+S?DowGOX(!jx?L3ig$uE5GZ!u1OS?}sP|E$3|Md_91FSM< zq095c#L>~w{jEWZ!NI}Rp~BmPc(bE})!-ObNoqE>mASdWp&`Q?H*V;7D zc6PS3I5;@m;H5P(GNQ+Xr%x9b7wu!x`|s5J zm?F#8V`gP#WnnS7c~hj^L<2$4#4t8BHFaxSn_X8*wg1kygZ-UK4^*<&-0G_KJ`bjm znug}~JQpYDhxpqBNbScj0SPv?wn0Y+I~aOFSgf3!oVNoVwnh56D+>#0=FHKmaV?)l zM;%d&?Y2cd_AkH1Er0u_&r6$}oP6t#qsX@7?Y9Zo&GGT;)wHC#h_TkBXl^ z)~8EKN=PVJhpPR>@0F28)Mw-IDN^?qw^v4EIOJr#mJJm@zPg?W_bMqplt1(1Yn=A$ z6uZu(3cszzuPt$K7!;U~@5p>UPK6+DwMAXHt?lj3MDc>09KJJWYCW$KAR(ta;m^Nb zeX~QnFH3u8{sydG=;p}DGtds-9)yL%Z?;hF$RFpV+`K$%6>YeyjUmEFPfyRvDt&rN zp2*(bU#fq2*cWPdX|RBSo<664@%}eiYnhdW`FR~)+CYAK%uH{lhOe)0MMcHd))u>r z6jJ+Sz0q=@yBl4pbFIb-jYgZ9jfb9~F zQSm`)>SVr2+3P50Zi>y9EL~gH587tb&rxUVwa$2CWMpu0am5x9A@vU#!i^jq9o5y< z0|I_lc+LTYsnT`WZYEs1z2~fEV%^y|E=Z5j-0G$cA2+>`E3Z>O|J zHcmmo8g=RT`}vvf1|dj51Vi}n%4ivk4_~mcvgYY#zjnf|PdDfGFD8n+E^h7BM^M)I zZoVoj!TeANXn3?t%iYp??DO*S+Pk`THaD*TT6QL10W^7ibVuBELeu2jU4qNcf(#m$S31Y` zwwAP0qU2;o}NKLhtL8d!oo?1dSpoLNkjXgiq_UvK=CU>wdTDYuqD6${=1m-$mPp21c<7D zML=i!phSvPgH~^}YR2wjZb4p8hEg{Tf^PVLV*(ms@BFKg|7vF?Vsa!T=Jt+g(d*Z* z;Z5V!XVMM<(tcqkR6ca0nA6Z1dQA4a7VFmbc0Im$&e-`+**A$!VhacR=%S;eu@@~| zTwN*2$V|#y#-CldX}Wp>spWis&vsyJ?B`C+QS$EgLozSRPIFTYpaMg~A;1{#<)KS2 z#Ft;py8r?*;lbOKhKwZtX`5K>9D^X9uWbw@`zo=Z=~2^8aA}yX)A){%_dvgCi-lAZJ~+1 zrl+g>_D(+^dyIjh;XK-#;h|YVQMBWYY`ssT{yXE|zS8U^hrfAqp&vYasHCXanIbbf zFtEM$rM|peB8I{TK{&qtF_^ILhV{d`H+Eg@nYs=rM%n#k5t7PE#^n!5&ZZgwgmvhT zt*!5%7VFSMWv(3SUc}^Qt)UJT)8157nP%%XH8hm3Y!V@FLcPOr&Qm8mT~5Hlh~XQb z!?U3T)iaGNJZ7>|gWla;=#Asip8A~$d2|`@NQ*|B)$P(yn54hEpw=mO;&xaqB_*Zo z;O2&gH6Q5`V`1o4I^fE1OWc4*RHI)_@m-qH% zgMa{-Gp`A%e)HzdYTQTeIEU$`XpjX^Lmc)fSSa{$8VWvQX^=I^$)0NHwhaX8x<85;7JjYqRPs|p%Y&2PqwF4 zS6A;IQ!EQ@{1HSJ@FW<1;TT6I z(>G+EPLUxFPEOC-X0CWGOSpZm1>_m;r9nbeszll;*rdLq-Bo7Y1%E-`W4hBQ)r`Wb zDrrGM=cB^|$ALUh#6*5#tO%NM?ejS|5A^;YA8VGTrmWn* zz(e+OdqQ(bIbakk6wGXAGC%Ffwzjr-bsJ61N29WG2%_<$6?L0^aOydlVKzXHP&Kzd zM=u97M9|(smIhWx#&_c!9!F4nZJNLSk*_HRQzz73c%E?f@L)eJE$vecNO2$OluDPU z#0Z+K;1pEvSbx9Dc~9yq?t&?#Fgd}~s4ri>@WtnVsH&{21hrODa*LPN@AE!_teF8~ z!HZ38?w&ezitv7jvDl!3DP|P#`L+u2BV|sbQm5gCzAR4<4l{0I@B-xyqwONkw1^a5`Jk+ziC*;x`wb^)We4W6#qWo0{d za{I%eFkyk_9xKA0-+ZOnV}F@5_H}l)!@=Ixc4_;^kDoVp!JNdm&A3ifE$rkKXZf>V z@e%;J0{YxZEcjq+5Oi>1*$hs^uIUj|TvAfN!QQ=OE$s8>wyxlFDA$45BkI3+RFI1g zEZl{DXAhJMrSi@!L@B7$f@f+bxs}@=ygxd*y*hc39<#GN?76#PLo%o8vYI`(G}oD| zQIeCL9T^>6GI%q$KWKlYY_)oa9b{mkm5P~}SxpJpf$)$)JTCs(Gi5lgUd3XuH|a(h zpYdp?{HB}^EqW_g|3)2u=##+x?RB53hK7c{y}gD8b@@v4*BV}y#^i9+2uS=mw;<&FCjI09TyHky1i&xHuK4KD4Jx6V6a}8ni zgF<6tW7AHRJ@{6+3ij@8QBgLTVCf}Z;8`(7a{uk+8+`G{AATw7lI02oXs-%7FwW=! zgg=_O80@<~r2_n3T}zA8v}JKPz*zjW0=ZAgAuH|nS-xg+`2E55XjN6!FT)$h)A!yp zOtH|W?fHWT56a8SpFMj9bZvswwf-nZ*yJR}A$51YDVpU@i4+gd+|S+3&?np5UUv@o zqU6uGxka|o$Xoy+C$Z3ZM%i5fPYjH#avYr{z4O zA`m{x^Hw^`CrC-b>RgRsFG=x`B-LDCa5wR3hJ#Kc5*_X|Bf$2)g|HsVsrzfbRALV%_IMj&y<0g~s=eeFmTA25@W zk_!5s!Ewr68@TG|Ft9l*ML|I!&~*>RNDdbir6kB2F^Gxa;G-KEhdbT2MYxmV?#vH+ zv4#R(YopkQwX{XUPOCyOx0@dW*g-%dB_R}1j{{>{5VXY~sr)oKdEEO#Ah$gi+StV8 zrmpVP^mG?+^~#9ooi>NQSK~FoHAO{nROvnTDKh?IHm%RjE~)wcSWD~Ehy)k}!>yVT zOO-yjWKk2e;v)}@`oKGU7>w!BdQ325v}(M1|EEv1Y;4z;8(vT;5)u+Jv#^LVN1F;| z@u_C?pi$pVuBVEj!lBfAQi4fLU4DAR5Ig z?Sq1ygrx)w3#A%Cm=!;QFgo1r3Qmy=eqU13zd(&S=vJ*Admng3SlDB0u^-BpFTT}U z__QJ%&jpO0VzF8JxzL)BAu!*UmuGBlEgy=5?Yc=3(N|_wnJItfx5&tffZezHxz!#s z>ZYb+-7h-`knb}u#VT0B-}?!oq4p9UIZO~8LeVTIeWE?&-~4FygRb1Cx{*8XDTkQlbvMFEau3!Fhs_uh}18J%oJ6 z6=J1NuWx{lGJYT6tEELz;$9Q0Mr!odx&=U00$OKhGB|j9d6?*6x%4zjO-+p+V*@Ug zj6vu!b98)s{O;~<=o6&~3K_reynK9%VBQ99-U=@i#_ya9b*nIyO`R-LtegRf0r3*- zai)Imr2lI5{h+f5f@k3-J2gtCxo)Jzg3KQ*tjvjDB?G3qaM~F`h8iK+fH-AkkF8imdw-+t;;%r(XMGB^ibb_wf8Fz%-40jo z>%V^ohrn_4qZ#DU_u-WD=g$L_98O^_vN{nVwNmdT+98&y3FBF&lZmEt7i{;ZRuprc z80+ad&CI-rW&xI3??e?{=Q$gCSyZ%ov-1k@DT|oX8+@gLN%4%IFqxo!LkVhC4WM1= ziNZ+)^$Y}&eV-cX*?-Ljl1++LOz=EK-Buc=Wc4WsQXlXA^p$g;8pIp_;^}=Km0oKT zY!N6Pq8|M4k_V}En+da2P1J%acQ!D|672Q3gbSlLnKDk;Ax0SSe?F}#hND0~7q|(? z0`TtVY)9h6g!xE1&r>7&!t?krU+q?i319TsLkpQ5MS)`vWe8_-mWl*-A4$XG^=*vl z^y#$0B@P+CV&6^M5zhXGmA|G?Wv8YVsmuwC2r&!Pu4h{rG4lByc-&umMgEQlK}IbT ze51g~)^i*_NljgCYMz$v0W-^3`v<>oHqyyMMs=L{pL^U;0zO6pHdvDreOJoN$;nAW z1H&(q%&b!!#Q+-s$VGcnWiqPKs^ac~uDQ9ni;GKOV09%0JosUNd%~s2kQ3zOdAYfX zD9ZeI;aslJwA_=C%)yjsLoNkMnj&A0=JUNZ^a$2;$@7m}4 zdVFl+E~WtiRhryfp-$uPKqJx9(}#zJRc{TL(9zK;jm1%Y_~ND-!|oio`(J`2*Stp| zu`Sj>+0>B@3x$l_ABS$Un7B`)icQCo#f-zKo<4b^V{R@BI5J-8Z8CVY zqLI}%%#xHcucjeDU*osc>L)zX*Eij2Kmd+%h=D*!6eO2%erZ-#gr8a>*)-al+dktK z=~)~OHyM0%kgft|D=N=-01WQQu=Jv$B8YNxa_&Id6Y35ER_20nzJ9@=T<~F%9}_b( zA9dt2_4Dy!-4he+?ChOCi@=|g@pGZAg_%;j3JMA+PoCuC<$dGz&HGln!UJ-p(jLB0 zs(;UKKYnq`$<58uN`40#2%JC++m+|2$BypRcHlEzT=3=v*tQw)FfXDY1L^4K07PWC zXb$SnZ7){RQHIAskXUyON)RVX~xxKnAJr wS~DVml~onsc=ziQ?e>ox{m=OAf1eLYHu#ybpUFhpVBrxp6)k1FBKpDq0RnnodH?_b literal 0 HcmV?d00001 diff --git a/materials/chapter4/simple.c.png b/materials/chapter4/simple.c.png new file mode 100644 index 0000000000000000000000000000000000000000..61e660c15108acf91c6949907ce96b851cafa7d4 GIT binary patch literal 3539 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 literal 0 HcmV?d00001 diff --git a/materials/chapter4/simple_nofp.S.png b/materials/chapter4/simple_nofp.S.png new file mode 100644 index 0000000000000000000000000000000000000000..63e17e2aec5b70eed75cf1ff456c9ba15e132644 GIT binary patch literal 3533 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