位微机习题

位微机习题

ID:83481609

大小:12.73 MB

页数:82页

时间:2023-07-06

上传者:灯火阑珊2019
位微机习题_第1页
位微机习题_第2页
位微机习题_第3页
位微机习题_第4页
位微机习题_第5页
位微机习题_第6页
位微机习题_第7页
位微机习题_第8页
位微机习题_第9页
位微机习题_第10页
资源描述:

《位微机习题》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

“ᳮᢈ”⚪1(⚪1.1)⚪(1)(Word)ᢣḄ(2)ᑖᡂ(3)PC%&'ᵨDRAMᡂ-SRAMᡂ(4)Cache45(5)ROM-BIOS?(6)=>(7)32@PC%AḄBᱏ(8)ᦟᩞ=MASMᢣ(9)ᜐᳮᘤḄ“LᢣMNṹM᡻QᕜS”ᢣ(10)VWXḄ%⌕ᑁ[\]^_`ab᪀=d`a(e)জᜐᳮᘤgdᓫ@ijklᜐᳮḄmnᑴᦪq@ᦪr஺ঝᑖᡂuᑖvᦪqஹᙢᙬz{ᑴ஺ঞPC%&'ᵨDRAMᡂ஺ট~&ᘤCacheᜐᳮᘤ%&j[Ḅ&ᘤ஺ঠROM-BIOS“Vᐭ^_”u^_BIOSḄᵨᔜᜓuᵨᡝklᙠ¡ᵨX¢=ᵨBIOS=Ḅ£¤¥¦஺ড=>CPU©ª᡻QX¢Ḅ«X¬®¯°ᡭ>ஹ²ᨚi´µu¶ᔣ᡻Q¸ᐜº᣸¼ḄM½ᜐᳮX¢u¾¿ᜐᳮX¢bÀÁÂÃĬ=>ḄᢣÅÆÇ᡻QḄX஺ঢ%ABᱏ%AḄ᪶ÊËuÌÍÎ%AÏḄᐵÑÒÓᵯÕ஺ণMASM×ØÙÚḄÛÜÝX¢஺তᢣÅḄᜐᳮX஺ᜐᳮᘤḄ“LᢣMNṹM᡻QᕜS”ᢣᜐᳮᘤß%&ᘤàLᢣÅ(rLᢣ)uáNᢣÅâṹḄ¥¦(rNṹ)uᯠÁ᡻QᢣÅᡠåæḄ(r᡻Q)ḄX஺থᘤèé`uᓽᢣÅëb᪀஺(ìí¤îïðÜÝèé`஺ñ4ò%⌕óôÜÝèéuVõ-ᨵ¤ᜐᳮᘤ¯ᳮ÷ᑁ[)ø⚪1.2)ᑨ>⚪(1)ØḄ÷úឋ¯ᳮüýØᙠ¥¦ஹឋ¦zᡂV÷þ☢Ḅ஺(2)IA-64᪀IA-32᪀Ḅ64᡽Intel64᪀஺(3)8086Ḅᦪ!16#8086ḄᦪḄ$ᦪஹᡈ#ᩩᦪஹᦪ16o(4))*+,-⌕/ᵨRAM3ᱏ567஺(5)ᜐᳮᘤ<=>?@?᜜BCDEI/O?HᵯJK᜜B@?஺(6)ᜐᳮᘤ)*ḄLᑴNOᑁQ-ᒹS5ᜧUVQWḄLᑴᘤ஺(7)WindowsḄ^_DOSb᛻KLᑴdb᛻e᪵Ḅ஺(8)16IBMPC/AT*kᵨISAlm஺(9)IA-32ᜐᳮᘤᔾp7RISCᢈrᱯt஺RISCᢣvᩖᢣxyz{*஺

1(10)ᜐᳮᘤ|}~ᦪᜐᳮᘤᑁQ~〈+,ᡈ᜜B஺1)জ┯ঝ┯ঞট┯ঠড┯ঢ┯ণত┯থ┯ெ⚪1.3)⚪(DCPUᦻḄᑏNᦻ!)¡*kᵨ3ᱏ᪀ᡂCPU஺(2)Intel8086£ᢝ¥¦+,§80486£ᢝ¥¦+,§஺(3)¨|ᑴ16ᐳᨵ$«ṹᔠ᝞°e±ᜐᳮᘤe$ᙢᙬ´µ16ᙢᙬ´µᐳV¶ᙬ¥¦+,§஺(4)DOS+⌕£ᢝ·¸5᡻}ᦻWº»Ḅ᡽¼ᑖ¾¿(5)ᦻᑏISAÀ⊤ÂPC*Ã'Å᪗Ç᪀(IndustryStandardArchitecture)⊤Âᢣxy᪀ÎὅḄᦻÐᦻ஺(6)WindowsḄᦻWᜳ±ḄÒÓrÔ0(7)PentiumlᑡᜐᳮᘤḄ×ØÙᢣxᨵ,SSE,SSE2¿Üᢣx஺(8)Pentiumᜐᳮᘤkᵨ__________ᦪK+,Þ@஺(9)ᨬàᵫâãkᵨIntel8088ᜐᳮᘤ¿lmäPC*஺(10)åæ32PC*+⌕kᵨ@?I/O?HᵯJᓱ஺()জCentralProcessingUnit,Néᜐᳮᓫᐗᜐᳮᘤঝ1MB,4GBঞ216,64KBটEXE,COMঠInstructionSetArchitectureডïðঢMMX,SSE3ণ64তIBM,DOSথPCI(⚪1.4)#ñ)¡z{*lmḄòWᡂóᔜQᑖᵨ஺()CPUõCPUöᜐᳮᘤ)*Ḅ᪶O஺ºkᵨᜧø^yᡂᵯJ3ᱏ3ᱏᑁyᡂ7Lᑴᘤஹù{ᘤ¿úûüý,þᓫᐗ(ᓽᘤ)஺ᜐᳮᘤᐸᢝᵯ᪀ᡂḄᑴḄᔜ!Ḅ"#$ᑴ஺%ᘤ&%ᘤ'()*$ᦪ,Ḅ஺᜜.ᜓ&᜜.ᜓ'ᢣ1234Ḅ5ᐭ(Input).ᜓ$5=(Output).ᜓ?@I/O.ᜓ஺I/O.ᜓBCI/ODE2FGD஺HI&4GᔜḄᐳᵨB⍝F⌕Nᦪ,HIஹᙢᙬHI$ᑴHIRS஺

2UV⚪1.5[\]'BᵨᜐᳮᘤஹᓫᱏUᑴᘤ[ஹDSPcᱏஹdᐭefUgh[Bᵨᜐᳮᘤ&〉ᔠklḄmᵨ⚞oḄᜐᳮᘤp᝞rᙠPCஹuvwᵯᾯஹyz{ஹ|}ᘤ~Ḅᜐᳮᘤ஺ᓫᱏ&'ᢣBᵨᑴ⚞oḄᜐᳮᘤcᱏᐸᑁ◀CPU᜜ᡂḄᐸ•F⌕◤~Ḅ᜜ᵯ$.ᜓ1᪀ᡂᐹḄmᵨ஺DSPcᱏ&@ᦪRSᜐᳮᘤ?'!ᑴᘤᐸ〉ᔠᜐᳮḄᦪRSᑁᡂᨵᘤ$஺dᐭe&ᑭᵨᑴᘤஹᦪRSᜐᳮᘤᡈBᵨᜐᳮᘤ£ᔠᐹmᵨ᪀ᡂḄᑴ஺UV⚪1.6[¥¦Intel80x86ᑡᜐᳮᘤᙠᢣ®☢Ḅ°±஺Ugh[8086ᝈ³´wḄ16µᢣ80286·¸¹º®eḄᔜᢣ80386¼ᢣᐰ☢·ᓣ¿32µ,80486ÂᐭÃÄᦪ,ᜐᳮᢣᝂÆᑡ▮ÈÉÊËᢣMMXஹSSEஹSSE2$SSE3,ᨬÐḄᝂÆ4ᜐᳮᘤᢝ64µᢣ஺⚪᜜Ñ&ᜧÓ1BC▅ÕÖᐵØᧇஹÚÛ4ὶÝÞßàáḄ°±âã஺1ὃ⇋æçᡂ!èᡈÊèéᦻ஺UV⚪1.7[ìí᝞îᭆð&ñvòஹóôõöஹóôõö)*$óô)*஺Ugh[ñvò&÷øùᵨúvûஹüý¦ᢣþḄòSᩭ⊤ᘤᢣṹᢣ஺ᵨ⊤ḄᢣᵨᑏḄ!ᑣ#$ᡂ஺ᵨ&ᑏḄ#'ᡈ)஺)⌕+,ᡂᘤ-.ᵫᜐᳮᘤ᡻3஺45+,Ḅ6“”9ᡂ:Ḅ#';AssemblerC஺;D⚪1.8CIJ᝞LᭆNOPஹRSOPஹTSOPஹUVWX஺YZ[\]^ᙠ`5.᡻3ᦻbcᙠDOSg᛻iᐭᐸᦻblᓾnoᨵ45ᦻb'qrstu;vwCOPYZWX$xyᳮ[\]ḄᦻbᦻbᡠᙠḄᑖI|WX#'ᦻbḄOP஺RSOP}᪷WXᑮᦻbᡠᙠWXḄ9᦮OP“RSOP”஺'ᦻb-ឋḄ᪗஺TSOP}YZUVWXᑮᦻbᡠᙠWXḄOPTSOP஺UVWXᵨᡝUVᡠᙠḄWX#'UVWX஺ᢣḄOPᡈὅ᡻3᜜5lḄᦻb஺;D⚪1.9Cqr'᥅uᡂᔩu

3;vwC185ᨴᡂᵯOḄឋ¢n£¤¥¦ᐸ§¨¢©ª¤«஺;1965®Intel²³Ḅ´µ¶·¤᥅⚜ᡂᵯO]Ḅᨔºy»¼®¢+¥஺½ᙠ45⚜¾¿⊤À◞185ᨴấᱏ»¼;ᨔºyÄÅC¢+¥ÆÇ¿È⊤À185ᨴᡂᵯOḄឋ¢n£¤¥¦ᐸ§¨¢©ª¤«஺C஺ᵫÉᵯÊᘤbḄᱥᳮ᩽▲ᙠោᯠÐÑ᥅ÒÓᢝÕ஺;D⚪1.10CוÙÚÛÜÝḄÞßàÜáâ'qru;vwCãᵨäåᑴ$x⊤ᦪè|ᢣ஺ᢣᵫṹ|ᙢᙬṹëᡂ஺¢|ᦪè^ìᙠ^íᘤîÜÝᙠ:ï}^íᘤðñᢣò᡻3óô9ᡂÜÝõö஺4#'“^í”|“÷ᑴ”;ø^í÷ᑴCḄᭆN஺ᢣḄ᡻3'ùḄᓽ¤ûᢥ᯿ᢣᙠ^íᘤî^ìḄù᡻3ᑖþᵫÿᢣ஺ᵫᘤஹᘤஹᑴᘤஹᐭᜓᜓᜧᡂ!"#5ᑖḄ()஺*+⚪1.11/0123ᑜᑖ56789:;<2ᵨᡝ?@ABᕒD01ḄEFG᪵ᔩ;*JK/ᨬM9Nᵨᡝ9஺O59NPQRS9஺O49NUVRS9஺O39NXY019஺O29NᘤRS9஺O19Nᑴ9஺O09Nᦪ]ᵯ_9஺<2ᵨᡝ?BᕒD01ḄEF`G᪵஺<2ᵨᡝaᑮḄcdNᡃfᨬg៉Ḅijᵨᡝ9k?BᕒaᑮḄijPQRS9ᡈNUVRS9஺*+⚪1.12/mnN0ᑡpq;rs᪵ᳮJuḄ“pq”ᱯឋ;z᝞r|}ᵨPC5zrD?pq*ᡈpqឋ/ḄEF5mnPCᐹᨵ᝞ᜧḄ;*JK/0ᑡNᢣᙠG8ᔆḄᐹᨵ᪀ᐹᨵ`ᡂḄG0ᑡ*Family/`᫏:ஹ`Ḅᘤ஺pqNᢣ`ᔆḄᐹᨵ᪀*`Ḅᡂ/Ḅ஺pqNG8Ḅᭆᒹ¡?pqஹ¢pqஹ01pq£஺ᐸu?pqNᢣG8?|}`¥¦ᦋᙢ©jª0᪀Ḅᔜ᫏ᘤ¬G᪵©®|)`஺?pq|¯ᘤឋ)°®ᑖᡂᔣM*ᔣ²/ᔣ³*ᔣ´/pq஺z᝞32µPCd▮·¸¥#D¹ºᜐᳮᢣஹ¼½ªᢣ£Ḅ¾ᢝ஺ᙠÀÁᔣ´pqḄ³Â²`

4ÃᦋÄᐸᡂÅ·᪀ḄÆÇÈPCᐹᨵ᝞ᜧḄ஺*+⚪1.13/ÉᱯÊËÌᨬÍIntel80x86ᜐᳮᘤNmn;Õ2Ö×▅ᐵÚᧇ*᝞ÉᱯÊËÌÜÝ/ᐸÞ⌕ᱯºàᵨḄÍᢈâ஺*JK/⏙ä2¼᪶ᜐᳮᘤ஺*+⚪1.14/PQRSஹUVRSஹᘤRSæὅḄèérDUVRSḄEF஺*JK/PQRSêᐹªḄ¢ëᐵᐸ⊤íîïðñjᡠóôḄõ⚪᧕5Bfð÷øùᵨPQRSVᑏûü⌕ýþQRSq᧕ȼᜧᜧÿᓄḄᑴᦔ᳛ᑮᜧḄ஺ᳮ!"#$ᘤᢣ'ᵨ)!*+,-ᡂḄ/0஺Ḅ123$ᘤᢣ'4567ᐹ9Ḅ:;$ᨵᐵ>?@஺AB$ᘤCDE᧕ᳮ!"ᵨᑏḄHB$ᘤ᧕▅Jஹ᧕᣸┯஺$ᘤḄN/ᩩ$ᘤᢣ'PQRᑴ-SḄᢣ'+ṹ,:;$VWXYCZ[\஺@23H◤⌕_`ᡂaR/b_`ᡂ$ᘤ+ṹ஺ெd⚪1.15ijkᙢRmnopRᐭWindowsyz{|}Ḅ~ᑴ᛻ᡈMS-DOS᛻id3ᵨ'஺2ᜐᳮᘤ᪀d⚪2.1i⚪1iALU2i8086ḄᢣXYᢣ'⚜3iPentiumḄᱏ¥Cacheªᵨ|/«᪀ᑖ¯«᪀4iᚮ᪘Ḅ³´ᑣ5i᪗·¸³ᘤ¹⌕º³»¼☢Ḅ¾¿6i᡻m/ᩩÁÂᢣ'ÃÄÅZF=1,ÉÊ«Ë7iÍḄ᪗[*@ḄÎÏ3ÏÐḄÑᡂ´ᑣᨵÒÓḄÔ\ᔩ8iḄ᪗[*ᜧÖᑏ×ØÙÚᕡḼ9iÞᦻWÍEND1ÃḄ1âᔩ10i#ãäyzᦪḄ¼Âᦪæç“ᙬ”¼SiজALU;ìíîï;ᓫᐗòóᜐᳮᘤᡠöRmḄᔜ0ï;¹⌕;ìï;íîï;஺ঝᢣᢣù¹³úᢣ'+ṹ2ûüýþÿᑮᜐᳮᘤᑁᢣᘤḄ஺8086ᑖᡂᓫᐗᢣ᡻ᓫᐗ!"஺ᙠ᡻ᓫᐗ᡻$ᩩᢣḄ&'ᓫᐗ()*$ᩩᢣ+ᑮ᡻',◤⌕/)ᢣ0ᡠ23⚜)஺ঞPentium=ᵨᑖ?ḄCacheD᪀•GᵨHᢣCache,•GᵨHᦪLCache஺টᚮ᪘Ḅ)PᑣRᐜ/TUVW23T/ᐜUX!"YZ)ᦪL஺ঠ᪗]ᘤ^⌕_`᧜ᢣ᡻Dbcᑴᢣ᡻eZḄᨵᐵh᝱஺

5ড᡻0$ᩩklᢣTmnZF=1,⊤pqrDb30஺ঢtᨵ஺ণvwxyḄ᪗z{ᜧ}ᑏ,ᓽ⊤ᜧ}ᑏ,&ஹ⊤&$G{஺ত,஺থᢣḄ!"ᦪ◤⌕ᘤᙢᙬᡈI/OᙢᙬᑮᦪLᦑ2ᦪLᙬYZ஺(⚪2.2)ᑨ⚪(1)ᦪᘤPCᡈᢣᢣ┐EIPᘤ¡ᵨᘤ஺(2)ᜐᳮᘤḄᢣ¢ṹR¤ᢣ¥ṹ¦¢ᡂ§¥⊤Ḅ¨Ḅ©ᦪᵯ«Ḅ¢ṹᘤR,&Ḅᭆ஺(3)EAXW®23¯kᘤ°3§±ᵨᨬ⚣´஺(4)ᜐᳮᘤḄµ〈ᢣMOV¡vwxyḄ᡻ឋx¸஺(5)vwxyḄx¸ᵫpºḄ4ᑖ»ᡂ,◤⌕ᑖ◞{½¾஺(6)80¿90(80—90)◤⌕ÀÁᡠ᡻DÂT/Á᪗]CF=1஺(7)MASMvwxyḄÃÄᵨᑖÅÆ,ᵨÇᦻᑖ஺(8)IA-32ᜐᳮᘤᙠÉᙢᙬYZ*,±ᵨ32Áᘤ஺(9)ᘤᙬYZḄ!"ᦪÊᯠᙠ^0஺(10)_ÌYZ*ÍÎᙢᙬkÏÐᙢᙬÑRឋᙢᙬᡈᱥᳮᙢᙬ஺(ÓÔ)জ┯ঝÙঞÙটÙঠ┯ডÙঢÙণ┯তÙথÙ(⚪2.3)ÚÛ⚪(1)ᘤEDXRÁḄᐸÇÝ16ÁḄÞ2R,ßᑖᡂàG8ÁḄᘤᐸÇD8-D15ᑖᵨÞ2⊤஺(2)IA-32ᜐᳮᘤᙠ_ÌYZ*ÍᘤRÁḄ஺(3)áâᙢᙬᵫàᑖ»ᡂ஺¥ṹÍÇ*$ᩩ⌕᡻ḄᢣãCSᘤᢣTὅᙠÉᙢᙬåæÇç"ᵨḄèᨵᘤᑖ஺(4)/8Áé/ᑴᦪklê10111010+01101100,8ÁDbR᪗]PF(5)ᙠÉᙢᙬë"YZ*áâᙢᙬ“7380Hê400H”⊤ḄᱥᳮᙢᙬRìíîÍçÆ¡ᱥᳮᙢᙬ஺(6)IA-32ᜐᳮᘤᨵ8G32ÁᵨᘤᐸÇEAX,,EDX,ᑖᡂ16Á8Á!"ïßᨵð᜜4GR,,.(7)IA-32ᜐᳮᘤóÁT✌ᐜ/ᐭR_____ë"YZ஺îë"YZᑖÍᨬᜧ,÷஺(8)MASM⌕øvwxyùᦻúḄ᡽üÞR,vwýþ᡽üÞ3OBJḄᦻú®23ᦻúwᑏ32ÁWindowsÿᵨ⌱஺(9)◀᜜ᦪ᜜Ḅᦪᙬᨵ3,ᑖஹ஺(10)ᵨEBX!"ᙢᙬᢣ%&'()ᵨ*+ᘤᢣᔣḄᦪ*.᝞0)ᵨ

6BP,EBPᡈSP,ESP2"ᙢᙬᢣ┐&'(4ᵨ*+ᘤᢣᔣᚮ᪘*஺解答জ32,DX,DHঝ16ঞট*ᙢᙬ&78ᙢᙬ&EIP,IPঠ00100110,0ড73C00H,73800HঢEBX,ECX,ESI,EDLEBP,ESPণ9ᙢᙬ&64KBতASM,:᪗ᙽ&FLATথ=ᓽᦪᙬஹ+ᘤᙬᘤᙬDS,SS?@⚪2.4ᜐᳮᘤᑁEᐹᨵG3H"IEᑖJ8086ᑖGKᜧMNEOJᐸᔜRḄS⌕MNUVWJ?XYZᜐᳮᘤᑁEᨵALUஹ+ᘤᢣ%ᜐᳮ[H"Iᓫᐗ஺8086ᨵKᜧMNEO^_`abᓫᐗ᡻dᓫᐗ஺_`abᓫᐗ^eᳮḼ8086ghi_`Ḅab&jkᜐᳮᘤlᘤ᜜mdno஺8086ᡠᨵl᜜q2rstuBIUvw_`md஺᡻dᓫᐗEU^jkᢣ%xṹஹᦪz{ᢣ%᡻d஺?@⚪2.58086|᪵9~ᨬᓫḄᢣ%`J?XYZ8086&ᢣ%ḄUᙠBIUᓫᐗ&ᢣ%Ḅ᡻dUᙠEUᓫᐗ஺BIUEUKHᓫᐗ=ஹᑖᡂᔜRq2&ᡠdq2஺U&ᙠEUᓫᐗlHᢣ%mdxṹ᡻d&BIUᓫᐗlᢣ%md^vUᨬᓫḄᢣ%`ᢈ஺?@⚪2.6VWU᪗JVWUIA-32ᜐᳮᘤḄ᝱᪗ஹᑴ᪗hi᪗J¡᝱᪗ᙠ᪗+ᘤEFLAGSḄ¢£¤¥஺?XYZ᪗^ᵨ¦§᧜ᢣ%᡻d©0ᡈᑴᢣ%᡻dªḄHᡈ«H¬mᑴᦪ¢஺᝞&ᨵwᢣ%᡻d®¯°ᨵᐵ᪗¢.ᨵwᢣ%Ḅ᡻d⌕ᑭᵨᐵ᪗஺᝱᪗^ᵨᩭ´µzd©0Ḅ᝱¶·஺ᑴ᪗^DF᪗&ᑴ¸¹ºq2Ḅᙢᙬᔣ஺hi᪗^ᵨ¦ᑴᜐᳮᘤ᡻dᢣ%Ḅ஺᝱᪗ᙠ᪗+ᘤEFLAGSḄ¢£¤¥᝞»^31111987654321005rTl~II~ISF|ZF|PHICF

7?@⚪2.7¼¡CFOF᪗Ḅ½¾஺?XYZm¢᪗CF⊤ÀÁ¹Âᦪz{©0UᔲÄÅÇ&ÄÅÇÈÉm¢ᡈÊ¢&z{©0ËᯠÍÎ.ÏÅ᪗OF⊤Àᨵ¹Âᦪz{©0UᔲÄÅÇ&᝞0ÄÅÇ&z{©0ÐÑÒÍÎ஺1^3AH+7cH=B6HÁ¹Âᦪz{^58+124=182,Çᑁ&Ám¢஺ᨵ¹Âᦪz{^58+124=182,Ç᜜&ᨵÏÅ஺2^AAH+7CH=®26HÁ¹Âᦪz{^170+124=294,Ç᜜&ᨵm¢஺ᨵ¹Âᦪz{^—86+124=28&Çᑁ&ÁÏÅ஺ூ@⚪2.8VWU8086ḄÔÕᙢᙬᱥᳮᙢᙬJÔÕᙢᙬ᝞×ØᣚᡂᱥᳮᙢᙬJÚÛ᝞»ÔÕᙢᙬᵨᱥᳮᙢᙬ⊤Ü?ᙳᓝßmᑴªZ^জFFFF^0ঝ40^17ঞ2000:4500টB821^4567?XYZᱥᳮᙢᙬ^ᙠᜐᳮᘤᙢᙬ_`ÉäÅḄᙢᙬᱥᳮᙢᙬ஺åHᓫᐗᨵHæḄᱥᳮᙢᙬ஺ÔÕᙢᙬ^ᙠᜐᳮᘤᑁEஹᕒè)ᵨÔÕᙢᙬ&)ᵨ“*ᙢᙬ^78ᙢᙬ“ª஺êHᓫᐗᨵ«HÔÕᙢᙬ&ᓽᜐ¦ÒëìḄÔÕ*&íᐸᱥᳮᙢᙬUæḄ஺ÔÕᙢᙬØᣚᡂᱥᳮᙢᙬ^ÔÕᙢᙬᵫᜐᳮᘤᙠäÅïðØᣚᱥᳮᙢᙬ஺ÛÔÕᙢᙬḄ*ᙢᙬñ8¬mᑴ4¢?l16mᑴU¢&ᓽò16,ÈÉ78ᙢᙬóᑮ20¢ᱥᳮᙢᙬ஺জFFFFH:0=FFFF0Hঝ40H:17H=00417Hঞ2000H:4500H=24500HটB821H:4567H=BC777Hூ@⚪2.9IA-32ᜐᳮᘤᨵG["I*&ᔜUVWᵨ⌶J?XYZIA-32ᜐᳮᘤᨵöṹ*ஹᦪ*ஹᚮ᪘*["I*஺öṹ*^÷Ḅᢣ%öṹ஺Ḅᢣ%öṹrsø᣸ᙠöṹ*&ᔲᑣÛÁûÍü᡻d஺ᦪ*^÷ýðzdᡠᵨḄᦪ஺Ḅᦪ'(U÷ᙠᦪ*&÷ᙠᐸþÔÕ*஺ᚮ᪘*^Sᚮ᪘ᡠᙠḄÿ஺ᵨḄᚮ᪘ᙠᚮ᪘஺⚪2.10ஹᙢᙬ!"#$%&ᩭ(ᘤ*+,Ḅᙢᙬ-.%/01ឋᙢᙬ-.஺

8◤⌕Ḅ6ṹஹᦪ9ᚮ᪘:ᒹ<ᙠ=*ᙢᙬ-.>஺$%&ᩭ(ᘤᵫ@ABḄᙢᙬ-.@ᡂ%ABḄᙢᙬ-./0஺DE%6ṹஹᦪ9ᚮ᪘FGᑖIḄ>஺ᙢᙬ8086ᜐᳮᘤḄ஺LḄᱯN%ᐸ1ឋᙢᙬ-.ᨬᜧ01MBRS%ᵫᨬᜧ064KBḄT*@ᡂ஺⚪2.11UᙢᙬVஹWXVYZ8086VL[ᑖ\ᵨU!"#ᙢᙬV]^8086ᐹᨵabḄcde᪀%ghiᙬ1MBᱥᳮᘤ-.%klᨬᜧmno64KBpqrsᵨ32Ftᘤஹ32Fuvᦪ32FiᙬVpawGrsxy32FᜐᳮḄz{8086஺ᙢᙬ|vVgh}ᢝᙢᙬ஺WXV]ᐹᨵᜧḄ⚓ᳮᱯᩗ^WXh%ᵨᐰ32ᩩᙢᙬ1%riᙬ4GBᱥᳮᘤ஺WXVDoᑖᳮ%*klr4GB஺ᜐᳮᘤ|vᙠWXV%rsᵨᡈ஺YZ8086V]ᙠWXV$yḄVḄy᛻%ghᙠ1MB-.$ᵨ“16F”஺ᜐᳮᘤ|vᙠYZ8086V%ghᵨᙢᙬ஺⚪2.12ᨵ%*ᵫ4*ᑖ@ᡂ!"#ᨵ]᡻yឋᜐᳮᘤᢣ#ஹ(ឋ¡ᢣ#஺*ᨵ]᪗£ஹᢣ¤¥ஹuvᦪᡈ¦ᦪஹ§¨4*ᑖ@ᡂ஺⚪2.13©ḄIªᨵ4*«¬%ᑖ\ᑭᵨU®ᡂஹ¯°U±²ᦻ´஺!"#©ḄIªᨵ4*«¬]l]ᵨᦻdlᘤµᡂ*sASM0᡽·Ḅ¸ᦻ´஺]ᵨ¹ASMᦻ´ºᣚ0OBJᙽᦻ´஺+½]ᵨ+½¹*ᡈT*¾᪗ᦻ´¿½ᡂ*EXEᡈCOMr᡻yᦻ´஺ÀÁ]ᵨÀÁ᣸◀┯Å%°ᡂÆÇḄr᡻yᦻ´஺⚪2.14MASM©>%$☢ÉᕒrsᵨḄÆÇḄ᪗Ë஺FFH,DS,Oxvab,Again,next,@data,h_ascii,6364b,.exit,small!"#FFH,Again,next,h_ascii⚪2.15̲IA-32ᜐᳮᘤḄ32FiᙬV16FiᙬVḄ@ᡂÍ%Î(ᔜᑖvᵨ஺!"#জ32FᘤiᙬVḄ@ᡂÍ32Fᨵᦔᙢᙬ=cᙬtᘤ+ÔᙬtᘤÕÖN#+F×Sᐸ>Ḅ4*@ᡂᑖ]•cᙬtᘤ---ÚÛ8*32FDᵨtᘤÜp

9•Ôᙬtᘤ——◀ESPÜ᜜ḄÚÛ32FDᵨtᘤÜp•ÖN——rs1,2,4ᡈ8(é0uvᦪḄêërs1,2,4ᡈ8ì⁚)p•F×Srs8ᡈ32Fᨵ£ï஺ঝ16FᘤiᙬVḄ@ᡂÍ16Fᨵᦔᙢᙬ=cᙬtᘤ+Ôᙬtᘤ+F×Sᐸ>cᙬtᘤghBXᡈBP,ÔᙬtᘤghSIᡈDI,F×S8ᡈ16Fᨵ£ï஺(⚪2.16)($ᑡᢣ>¸uvᦪḄiᙬVᎷùVARD•*ýìÔS஺(1)movedx,1234h(2)movedx,vard(3)movedx,ebx(4)movedxjebx](5)movedx,[ebx+1234hJ(6)movedx,vard[ebx](7)movedxjebx+edij(8)movedx,|ebx+edi+1234h](9)movedx,vard[esi+edij(10)movedx,[ebp*4]("#)জ%ᓽᦪঝ)*ঞ,-ᘤট,-ᘤ0*ঠ,-ᘤ23ড,-ᘤ23ঢ6ᙬ8ᙬণ236ᙬ8ᙬত236ᙬ8ᙬথ<=>?ᙬ(@⚪2.17)CᵨEFGᝅḄJKᒹ(ᡈὅᢥ᯿EFQR)STMASMXYZ᛻\]^_`>⚪2-1b>⚪2-2cdஹf_g*hᡂj᡻lcdbᑡ⊤ᦻK\pqf_rsḄXY஺3ᦪ&ᜐᳮ(@⚪3.1)u#⚪(1)Cᵨvwᑴ8y⊤z{|}᦮ᦪ\257ᨵ3Ḅ_ṹᔩ(2)|“F”bᦪ46HMOVᢣḄᦪᨵᔩ(3)jᢣ“MOVAX,(34+67H)*3"Ḅᦪ⊤zᡂ(4)ᦪ500,¡⁚8Ḅ£ᔩ(5)Q"XCHGEDXCX”¨ᩩ┯«Ḅᢣ(6)¬®¯°ᙢᙬ,ᢣ"LEAEBX,[ESI]”µ¶,·ᢣ“MOVEBX,

10OFFSET[ESI]”¸┯«7INC,DEC,NEGbNOT¬ᓫᦪᢣ\º»ᦪ¼ᦪ½¾Ḅᦪ¿8ᜧÁᑏÃÄᣚCᵨÆÇÈ¿9É◀ËÌÍ┐3{|}ᦪbᨵ|}ᦪ\ᨵÏÐÑÒḄᢣ஺Óᨵ¨ÐᢣḄÔÕË᝞×{|}ᦪbᨵ|}ᦪÌÍ¿10Ø`ÙÌÍÚÛØ`É¿"#ÜজÝᨵ஺Cᵨvwᑴ8y⊤z{|}᦮ᦪ\257Ýᨵ3Ḅ_ṹ஺ঝ|“F”ḄASCHṹ¸ᦪ46H,ᡠÝᨵ஺ঞf_cdᙠf_^c3ᦪ⊤zàÍ\áᑮ¨»¶ãḄᦪ\ᦑÛᦪ⊤z஺টÑ஺ᦪ500ᜧ娻⁚ᡠ⊤zḄᦪæ\ᡠÑ⁚8ç஺ঠஹ¾᪗,-ᘤyᦪÑÒ\Ñᵨ¼ᢣwlᦪæéᣚ஺ডêὅᙠᢣ᡻lëᯰᙢᙬ\µ¶ḄìíîὅḄOFFSETÓᙠf_▤ðᯰᙢᙬ\íñë,-ᘤᑁóÑjôḄ\ᡠ{Ëᯰᙢᙬ஺ঢINC,DEC,NEGbNOTᢣḄᦪõᦪÚ¾Ḅᦪ஺ণᜧÁᑏÃÄᣚᑭᵨ÷øḄASCIIṹ2ù20HoতÔÕËÑ{|}ᦪbᨵ|}ᦪ\í᪷æÌÍûüᑖþÿ᪗ᘤḄCFOF᪗ᑭᵨCFOF஺থᑣᑴḄᡠᐸ!஺#$⚪3.2ᑨ'⚪1()*+᦮ᦪ.Ḅ/ṹஹ2ṹ⊡ṹ4)᪵64789ᦪḄ:ṹ)᪵஺2;ᵨḄBCDṹ!8421BCDṹᐸ<Ḅ8⊤>D3?ḄᩗA஺#3IA-32ᜐᳮᘤDᵨEFGHIJK⁚ᦪM஺#4NOPNOPᢣRᐸS᪷UVᨵᢣR஺#5ᚮ᪘ḄOP/ᑣZ“ᐜ]^”ᡠᚮ᪘`ḄᦪM◀PUSHPOPᢣR᜜cᐕeᐸfGgᑏ஺#6iᯠADDᢣRSUBᢣR᡻]lmn᪗o᝱q᡻rḄ᪗scmn.tḄ᡻uv஺7ᢣR“INCECX”“ADDECXw”ḄSxyz{ᐰ)᪵}~ᣚ஺#8789ᦪᙠr☢᡽ᦪcᨵ89ᦪr☢89᡽?ᦪ)?ஹᦪ)஺#9Vᨵ?ᡈ^⚪CFOFVᨵPᵨᡠᢣR᝞ANDஹORCFOF!0஺#10CMPᢣRZḄOPᦪOPᦪCMPSᢣRZOPᦪḄOPᦪ஺#জ(ঝ(ঞ(ট┯ঠ┯ড(ঢ┯ণ┯ত(থ(#$⚪3.3¨N⚪#1©ªK⁚«Ḅ¬ᢣR®8Z,°±«²ᡠᐹᨵḄ´µᙢᙬḄOP8Z«#2¹º<ᨵ)*“01100001”:ṹ஺᝞v».¼!Z789ᦪ,.Z10ᑴᦪ

11᝞v¼!.ZBCDṹᑣ⊤>¾_____________À᝞v.ZÁ*ASCIIṹᑣÂ⊤K8o(3)CÄÅᵨ“

12”⊤>Æᐝ᪗ÈᑮÊ)✌?ᙠÌ:ÄÅ<◤⌕Ï^Ð*ÑᑴK8Ò)*ZÈÓᐸASCHṹZ.ᐝ᪗µÔᑮÕrᡠᙠḄ✌?Ö)*ZᣚᐸASCHṹZ.ᐝ᪗µᑮÊ)஺(4)ᦪM`ᨵÄדH8843DWORD99008843H”Âṹ`ᢣR"MOVCX,WORDPTRH8843”᡻]CX=஺(5)ᵨDWORD©ªḄ)*«XYZ,.ḄØZ,ᵨ“TYPEXYZ”lÙᑮᦪ!<>᝞vᐸK«ÜᵨÝÞᵨßà஺(6)ᦪM`ᨵÄדABCBYTE1,2,3”Âṹ`ᢣR"MOVCL,ABC+2”᡻]CL=<,(7)á⚪3-9ḄTAB©ª᝞vZ“1234567890”ᑣâ>uvZ஺(8)ᢣR“XOREAX,EAX”“SUBEAX,EAX”᡻]EAX=,CF=OF=஺ãᢣR"MOVEAX,0”᡻]EAX=,CFOFVᨵᓄ஺(9)á⚪3-15åæ᡻uç«QVARᑁéZÒBCDᑁéZ஺(10)êEDXᑁḄ789ᦪ◀16,ÜᵨᢣR“SHREDX,”,ᐸ<])*OPᦪZ)-*ìᓽᦪ஺解答জBYTE,OFFSETঝ97,61,EᑏKîaঞ0DH13,0AH10ট8843HঠডDWORD,4,WORDPTRXYZঢ3ণ78894111ত0,0,0থ0123456788765432H,83H4#$⚪3.4Êᑡᓝñᑴᦪ⊤>789᦮ᦪòóᣚ!ᓝᑴôHḄ¾:জFFHঝ0Hঞ5EHটEFH#জ255ঝ0ঞ94ট239#$⚪3.5Êᑡᓝᑴᦪ¾óᣚ!ö÷BCDṹÒজ12ঝ24ঞ68@99#জ12Hঝ24H

13ঞ68Hট99H#$⚪3.6Êᑡö÷BCDṹóᣚ!ᓝᑴᦪÒজ10010001ঝ10001001ঞ00110110ট10010000ெজ91ঝ89ঞ36ট90#$⚪3.7Êᑡᓝᑴᦪᵨ8?ᑴ⊡ṹ⊤>Òজ0ঝ127ঞ-127ট-57#জ00000000ঝ01111111ঞ10000001ট11000111#$⚪3.8ᓝñᑴᦪMḄsßàZᔲᨵ?ᡈú?Òজ1234H+7802HঝF034H+5AB0HঞC051H-1234Hট9876H-ABCDH1জ1234H+7802H=8A36H,7?ঝF034H+5AB0H=4AF4H,ᨵ?ঞCO51H-1234H=BE1DH,7ú?ট9876H—ABCDH=ECA9H,ᨵú?#$⚪3.9ᦪṹ0û9ஹᜧᑏKîAûZஹEᑏKîaûz(ÝḄASCIIṹᑖZJþÿASCIIṹ0DH0AHᑖᦪṹ0-9ḄASCIIṹ30H39H஺ᜧᑏA-ZḄASCIIṹ41H5AH஺ᑏazḄASCIIṹ617AH஺ASCIIṹ0DH0AHᑖḄᣚ஺ெ!⚪3.10#$%&ᦪ'()ᢥ᯿᝞-⌕/0123ᡈ563জmylb8923PersonalComputerঝmy2b8ᵨᓝ=ᑴᦪ⊤@Ḅ⁚2320

14ঞmy3b8ᵨᓝB=ᑴᦪ⊤@Ḅ⁚2320টmy4b8ᵨC=ᑴᦪ⊤@Ḅ⁚2320ঠmy5w820&DEFḄ23ডmy6c8100Ḅ63ঢmy7c⊤@9PersonalComputer1)mylbbytefPersonalComputer,my2bbyte20my3bbyte14hmy4bbyte00010100bmy5wword20dup(?)my6c=100my7cequீPersonalComputer>(!⚪3.11)0163NUM,ᐸF85$ᦪ'(K01ᦪL23DATALIST,MḄᜮ5&ᓫᐗKQR-10,2,54,ᨬT1&ᓫᐗUFV0஺()numequ5datalistbyte-10,2,5,4,?(!⚪3.12)WXᙢᙬ[\]⁚8ᓫ^)ᵨᓝB=ᑴ_`ab-ᑡdeᑖfḄᦪFbyte'ABC,10,10h,'EF',3dup(-l,?,3dup(4))wordlOh,-5,3dup(?)()4142430A104546FF00040404FF00040404FF000404041000FBFF000000000000ெ!⚪3.13)#ᙠh&ijKᨵ᝞-ᱏ()mᑏbnᩩp〈ᢣs᡻TuQᘤEAXḄᑁx;ᦪ'(org100hvarwword1234h,5678hvarbbyte3,4varddword12345678hbuffbyte10dup(?)messbyte'hello"z{ṹ(moveax,offsetmessmoveax,typebuff+typemess+typevardmoveax,sizeofvarw+sizeofbuff+sizeofmessmoveax,lengthofvarw+lengthofvard解答জঝEAX=0114HঞEAX=0006HটEAX=0013HEAX=0003H

15'⚪3.14ᢥ᯿᝞-|b}`)ᙠ~@ASCII⊤:I0123456789ABCDEF20300123...40@ABC…50PQRS..60'abc•70pqrs⊤}ᨬ%ḄᦪᑡASCII{ṹFḄX4^ᵨᓝB=ᑴ_`)⊤}ḄᦪASCII{ṹFḄ4^ᵨᓝB=ᑴ_`஺iᙠᦪ'(᪀⌼᪵Ḅ⊤}ஹᑏASCII{ṹFV)ᯠTᵨ9@ijDISPMSG@஺includeio32.inc.datatablebyte'|0123456789ABCDEF,,13,10byte'-%+----------------------------------\13,10byte'20|',20h,20h,21h,20h,22h,20h,23h,20h,24h,20h,25h,20h,26h,20h,27h,20h,28h,20h,29h,20hbyte2ah,20h,2bh,20h,2ch,20h,2dh,20h,2eh,20h,2fh,20h,13,10byte'30|,30h,20h,31h,20h,32h,20h,33h,20h,34h,20h,35h,20h,36h,20h,37h,20h,38h,20h,39h,20hbyte3ah,20h,3bh,20h,3ch,20h,3dh,20h,3eh,20h,3fh,20h,13,10byte*40|,40h,20h,41h,20h,42h,20h,43h,20h,44h,20h,45h,20h,46h,20h,47h,20h,48h,20h,49h,20hbyte4ah,20h,4bh,20h,4ch,20h,4dh,20h,4eh,20h,4fh,20h,13,10byte'50I',50h,20h,51h,20h,52h,20h,53h,20h,54h,20h,55h,20h,56h,20h,57h,20h,58h,20h,59h,20hbyte5ah,20h,5bh,20h,5ch,20h,5dh,20h,5eh,20h,5fh,20h,13,10byte'60|',60h,20h,61h,20h,62h,20h,63h,20h,64h,20h,65h,20h,66h,20h,67h,20h,68h,20h,69h,20hbyte6ah,20h,6bh,20h,6ch,20h,6dh,20h,6eh,20h,6fh,20h,13,10byte'70I',70h,20h,71h,20h,72h,20h,73h,20h,74h,20h,75h,20h,76h,20h,77h,20h,78h,20h,79h,20hbyte7ah,20h,7bh,20h,7ch,20h,7dh,20h,7eh,20h,7fh,20h,13,10byte0.codestart:moveax,offsettablecalldispmsgexit0endstart'⚪3.15ᦪ'(ᨵ᝞-01)IA-32ᜐᳮᘤÈ]ÉÊ`ËQᙠÌQ:vardword12345678h]⁚8ᓫ^ᢥᙢᙬWXᑮḄÏj)ᑏb&23ᑁx஺ÐÑÒ᝞-ᢣsḄ᡻

16ÓÔ:moveax,varEAX=movbx,varBX=movex,var+2CX=movdl,varDL=movdh,var+3DH=Ù]iᵨÚB=ᑴ⁚@ijDSIPHBÏj@ᔜ&⁚=ÜÝ)ÞÙ]ᵨᓝB=ᑴß@ijDSIPHD@àᦪ'=á஺ÉÊ`âᵨ“XXஹ”)ᓽX⁚ᦪ'QRᙠXᙢᙬQæᓫᐗஹ⁚ᦪ'QRᙠᙢᙬQæᓫᐗ஺]⁚8ᓫ^ᢥᙢᙬWXᑮḄÏj)var23Ḅᑁx78Hஹ56Hஹ34Hஹ12Ho;EAX=12345678H;BX=5678H;CX=1234H;DL=78H;DH=12H!⚪3.16ᵨçèMOVᢣséêᢣs"XCHGEBXJEDI]”ëì஺pusheax;Ù]íᨵmoveax,ebxmovebx,[edi]mov[edi],eaxpopeax;Ù]íᨵ!⚪3.17Ꮇ#ñòESP=0012FFB0H,ÑÒ-☢nᩩᢣsT)ESPôõö÷pusheaxpushdxpushdwordptr0f79hpopeaxpopwordptr[bx]popebxESP=0012FFACHESP=0012FFAAHESP=0012FFA6HESP=0012FFAAHESP=0012FFACHESP=0012FFB0H!⚪3.18øùᦪ09Ḅ}úṹ818Hஹ34Hஹ05Hஹ06Hஹ09HஹOAHஹOCHஹ11Hஹ12H.14Hzm8᝞-ijḄnᩩᢣsûüý)ÑÒnᩩᢣsḄëì᡻ÓÔ஺;ᦪ'(tablebyte18h,34h,05h,06h,09h,Oah,Och,llh,12h,14h

17;{ṹ(movebx,offsettablemoval,8xlat8ÿḄᑨᵨḄI/OḄDISPHBᣚṹALḄ஺᝞ᵨXLATᢣ᝞ᦋ"1#$);ᦪ()tablebyte18h,34h,05h,06h,09h,Oah,Och,llh,12h,14h;IJKLṹ⊤;>ṹ)movebx,offsettable;£8O=KLṹ⊤✌ᙢᙬmoval,8;AL=8xlat;AL=12HW8ḄKLṹXᵨXLATᢣEmovebx,offsettable;£8*=KLṹ⊤✌ᙢᙬmoveax,0moval,8;AL=8moval,[eax+ebx];AL=12HW8ḄKLṹXWZ⚪3.19\ᑖ^ᵨ_ᩩabcdᢣeᡂ᝞ghiEW1XjEBXklᘤnEDXklᘤḄᑁpqrslᐭEDXklᘤ஺2ᵨklᘤEBXnESIḄuᙬvᙬwᙬxyjlzᘤḄ_{|⁚~ALklᘤḄᑁpqrjs〈ᑮAL஺3ᵨEBXnOB2HḄklᘤqwᙬxyjlzᘤḄ_{|nECXklᘤḄᑁpqrjs〈lzᘤ஺432vVARD~ᦪ3412Hqrjs〈lzᓫᐗ஺5jᦪ0A0H~EAXklᘤḄᑁpqrjs〈EAX஺W#$Xজaddedx,ebxঝaddal,[ebx+esi]ঞadd[bx+0b2h],exটaddvarw,3412hঠaddeax,OaOhWZ⚪330ᑖ^᡻᝞gᱏᩩᢣḄ᡻sE1moveax,80h;EAX=addeax,3;EAX=,CF=,SF=addeax,80h;EAX=,CF=,0F=adceax,3;EAX=CF=,ZF=(2)moveax,100;EAX=addax,200;EAX=,CF=(3)moveax,100;EAX=addal,200:EAX=CF=

18(4)moval,7fh;AL=subal,8;AL=,CF=,SF=subal,80h;AL=,CF=,0F=sbbal,3;AL=CF=,ZF=(#$)(1);EAX=80H;EAX=83H,CF=O,SF=O;EAX=103H,CF=O,0F=0;EAX=106H,CF=O,ZF=O(2);EAX=100;EAX=300,CF=0(3);EAX=100;EAX=44,CF=1(ᒹ§256Ḅ¨§JE256+44=300)(4)moval,7fh;AL=7FHsubal,8;AL=77H,CF=O,SF=Osubal,80h;AL=F7H,CF=L0F=lsbbal,3;AL=F3H,CF=O,ZF=O(Z⚪321)©ªgᑡᔜᩩᢣ᡻AL®CFஹZFஹSFஹOFnPFḄ°᝱:moval,89haddal,aladdal,9dhcmpal,Obchsubal,aldecalincal(#$)moval,89hAL=89HCFZFSFOFPFaddal,alAL=12H10011addal,9dhAL=OAFH00101cmpal,ObchAL=OAFH10101subal,alAL=OOH01001decalAL=OFFH00101incalAL=OOH01001WZ⚪3.22ᨵ¶{64·¸¹᦮ᦪl»ᙠvbufferlnbuffer?IJᦪ(ஹbᑏ>ṹeᡂEDX.EAX-bufferl-buffer?hi஺W#$X;ᦪ()bufferlqword67883000hbuffer2qword67762000h;>ṹ)

19moveax,dwordptrbufferlmovedx,dwordptrbuffer1+4subeax,dwordptrbuf'fer2sbbedx,dwordptrbuffer2+4(Z⚪3.23)ᑖ^᡻᝞gᱏᩩᢣḄ᡻s:(1)movesi,10011100bESI=_________Handesi,80hESI=__________Horesi,7fhEST=__________Hxoresi,OfehESI=__________H(2)moveax,1010bEAX=Bshreax,2EAX=B,CF=shleax,1EAX=B,CF=andeax,3EAX=B,CF=(3)moveax,1011bEAX=Broleax,2EAX=B,CF=rcreax,1EAX=B,CF=oreax,3EAX=B,CF=(4)xoreax,eaxEAX=__________,CF=__________,0F=ZF=,SF=,PF=(#$)(1);ESI=9CH;ESI=80H;ESI=FFH;ESI=01H(2);EAX=1010B(¿ᨵÀÁ0,gÂ);EAX=0010B,CF=1;EAX=0100B,CF=O;EAX=OOOOB,CF=0(3);EAX=1011B(¿ᨵÀÁ0,gÂ);EAX=101100B,CF=0;EAX=10110B,CF=O;EAX=10111B,CF=0(4);EAX=O,CF=0,0F=0;ZF=lSF=0,PF=1f(Z⚪3.24)3.24©ªgᑡᔜᩩᢣ᡻AXḄs®°᝱᪗ÄCFஹOFஹSFஹZFஹPFḄ°᝱஺movax,1470h

20andax,axorax,axxorax,axnotaxtestax,OfOfOhW#$Xmovax,1470hAX=1470HCFOFSFZFPFandax,axAX=1470H00000orax,axAX=14701100000xorax,axAX=00001100011notaxAX=FFFFH00011testax,OfOfOhAX=OFOFOH00101WZ⚪3.25ÅÆÇÈᢣÉÊËÌÍஹÎnÏÐhi"W#$XANDᢣ“0”~ËÌÍORᢣÂ"1”ᡈËÌÎXOR“1”ÒᡈËÌÏÐ஺WZ⚪3.26᝞g)ḄhiEmovecx,16movbx,axnext:shrax,1rcredx,1shrbx,1rcredx,11oopnextmoveax,edxW#$XAXḄ_ÓÔÕÍ_Ôᡠ×Ḅ32sØlÙEAX஺WZ⚪3.27b_{64ᦪ(ÅÆÚ3,ᎷÜÝ{ᦪ(ÞßØlᙠEDX.EAXklᘤ஺W#$X;>ṹ)movecx,3again:shleax,1rcledx,1loopagainWZ⚪3.28b_{àáBCDṹvWâ᝞92HãᣚäḄASCIIṹᯠæᵨDISPCWᙠçᐭçªX஺W#$X;ᦪ()bedbyte92hè>ṹ)moval,bed

21shral,4addal,30hcal1dispcmoval,bedandal,Ofhaddal,30hcal1dispcWZ⚪3.29MOVSᢣäâéêëᢣḄwᙬᱯíᵨMOVnADDîᢣËÌMOVSDḄhiWᎷÜDF=0஺W#$XMOVSᢣḄhiïEESEIEDIJ^DS:[ES1JèESI-ESI±1/2/4,EDI-EDI±1/2/4ᵫñ¿òªéêëᢣḄwᙬᱯíEóêëᦪᵨklᘤESIôõwᙬö÷ᙠDSᢣᔣḄᦪ()ù¿ᦋvèúḄêëᦪᵨklᘤEDIôõwᙬûiᙠESᢣᔣḄ▬rᦪ()E᡻_Ôéêëóᢣ┐ESInúḄᢣ┐EDIþÿᦋ±1⁚±2ᡈ±4஺ᢣ┐ḄᑴᵫDF᪗DF=0,DF=1,஺pusheaxmoveax,[esi]moves:[edi],eaxaddesi,4addedi,4popeax.⚪33001᝞345᡻7Ḅ89:;;ᦪ>?msgbyte'WELLDONE',0Lṹ?movecx,lengthofmsg-lmovebx,offsetmsgagain:moval,[ebx]addal,20hmov[ebx],aladdebx,1loopagainmoveax,offsetmsgcalldispmsg᝞;UᐸWXY"movebx,offsetmsg"ᦋZ"xorebx,ebx”,ᑣᑭᵨEBX^_`ᙬḄbcXY᝞dᦋᡂEBXfgᘤij`ᙬklmnop᪵rstuv89:;welldoneEBXfgᘤij`ᙬmoval,msg[ebx]movmsgfebx],al

22.⚪3.313☢45ḄrszUᦪ{ARRAY1Ḅcᐗ8000H,Ugᙠᦪ{ARRAY2,ᙠᜐᐭ〉ḄXYᡈXYḄᑖ஺;ᦪ>?array1dword1,2,3,4,5,6,7,8,9,10array2dword10dup?Lṹ?movecx,lengthofarray1movebx,0again:moveax,array1[ebx*4]addeax,8000hmov______________addebx,__________loopagainuvmovarray2[ebx*4],eaxaddebx,.⚪3.32noḄ⚪454noḄ.⚪45஺4()*+,-..⚪4.1v⚪1zᱯ᪗ᙢᙬḄij`ᙬ¢£¤ᵨᨬ¦t2z᜻Ꮤ᪥ªt3Zᑨ¬®¯ᦪᜧ±ᨵ®¯ᜧ±Ḅᩩ´µ¶ᢣ·¸pt4ᑖ¹:᪀Wbcᑖ¹»¼^ḄJMPᢣ·ᨵÀᵨt5ZᱯÂÃÄZÅ45Æ⌕ḄÈÉt6Å45Ëᵨᚮ᪘Î⌴ÐᦪZ⌕ᱯÂÈÑᚮ᪘Ò⊝Ô⚪t7ÐᦪÎ⌴Ḅ“Δ“Îᙬ”ᨵØÂt8INCLUDEXYINCLUDELIBᨵØÂt9Þᔠ4ᨵàát10âWindows45ᨵäZåæ9çcDLLᦻ´¸gᙠtuvজpc45êëÀìíî᣸ᑮ¸pḄgñØò᡻äᢣ·^Ḅó¶ôᨵᦋõ᪗ᙢᙬËᵨij`ᙬl¢öëÀìíḄᮣøÄù஺ঝᦪ>ûüäᦪ>ḄçóᵨýÎþᦪ>Ḅ᜻Ꮤ᪥ªóᦪ>Wᒹ᪥ᙠᑁḄ“1”Ḅᦪឤ᜻ᦪ᜻᪥ឤᏔᦪᏔ᪥஺ঞᦪᨵᦪḄ!"Ḅ᪗$%᝱ᦑᑨ)ᦪᨵᦪḄᜧ+ᐵ-⌕ᑭᵨ!"Ḅ᪗$ᔠᡠ3ᨵ45Ḅᢣ7஺ট9ᑖ;<᪀>ᑖ;?@AḄJMPᢣ7ᵨEFG

23ᙬ஺VW⌕pᢝᚮ᪘t⊝᪵vdY⌴fᦪᓰᵨḄᚮ᪘Aᔲᑣ^ᵨ_UVWZdᚮ᪘N஺ঢ“”⌴fᦪḄJ^ᵨVWᦋfᦪ!^ᵨVW“ᙬ”}^ᵨVWZdᦋᙢᙬᵨḄ¡ᑁ஺ণINCLUDE£¤ᒹ¥Ḅᦻ§ᦻ¨ஹ©VWᦻ¨ḄJªᑖINCLUDELIB£¤ᒹ¥ḄUVW«ᦻ¨஺(9)¬⊡¯஺থWindowsVWᙠ±y}◤⌕³´ᐸµᝅḄ·᝱¸¹«DLLᦻ¨~ᐸºᨵ»¼ᑮ}½¾¿!Àᙠ஺(Â⚪4.2)ᑨ)⚪(1)ᢣ7ᢣ┐ᡈὅÇᒹÈṹÊËÀᘤḄᦋÍÎVWÏVḄᦋ஺(2)JMPᢣ745ÐÑ£ÒḄGOTO£¤ᡠ3!dᵨ஺(3)Óᩩ¨ÕÖᢣ7Jcc⌕ᑭᵨ᪗$ᩩ¨ᡠ3᪗$஺(4)JAJGᢣ7Ḅᩩ¨×“ᜧE”ᡠ3"Jᢣ7ḄØÙ஺(5)ÚᑴÜÝᔲ᝞ñ^ᵨVW>ᨵCALLᢣ7lmNGòóᝅ஺(8)UVW◤⌕pôËÀᘤᒹpô⌴ᐭOfᦪNOfᦪḄᵨËÀᘤ஺(9)ᑭᵨINCLUDEᒹ¥Ḅ©ᦻ¨F▭öÞ©VWḄJªᑖ஺(10)÷ᐭ«ᦻ¨☟᝱UVW«ᦻ¨Ḅ᡽úa×LIB,ᡠ3ὅឋüå"஺(ýþ)জঝ┯ঞ┯ট┯ঠ┯ডঢণ┯তথ┯(⚪4.3)⚪(1)JMPᢣ᪷᪗ᙢᙬḄᙬ!"#$ᑖᡂ'()*+,ᑁஹ,,ᑁஹ,0ஹ,,0ஹ஺(2)Ꮇ2ᙠ45678*9"EBX=1256H,:;<=TABLEḄ>ᙢᙬ?20A1H,@ឋᙢᙬ32F7Hᜐ6C3280H,᡻Eᢣ“JMPEBX”GEIP=,᡻Eᢣ“JMPTABLE[EBX]MGEIP=஺(3)"CMPEAX,3721H”ᢣKG?JZᢣ,LMḄᩩO?EAX=,PQZF=஺(4)Rᑏ;T“e”?UᦻWXYZ⚣᳛ᨬ^Ḅ;T஺᝞`abUᦻᦻ᫏ᑭᵨf⚪4-11ḄgᡈijEkᓫmn"opLZnᦻX;⁚ᦪ“8FH”ᨬs"tᑨvwxyzᵨḄ;⁚nṹ#|?஺(5)}~᪀xyᨵbᑖᡂ"?,}~ᑖ஺(6)f⚪4-14xyXḄRETᢣ"᝞`ᵨPOPEBPᢣJMPEBPᢣᣚ"PQEBPᑁ?஺(7)x?“TESTPROC”"ᑣxḄ?஺?“DISPMACRO”"ᑣḄ?o

248ᑭᵨᚮ᪘⌴xyᦪḄi?Ḅ"f᝞ᙬᚮ᪘,ᦪḄ6ᘤ?9MASM¡¢£X"¤¥bᐳᵨḄ<=§¨ᵨ©ᢣª«¨ᵨ᜜<=⌕¨ᵨ©ᢣ¤¥஺10®ᵨReadConsole¯ᦪQ"ᵨᡝᙠ±²³ᢥ9ᦪ;8,ᯠG¶·"ᑣ±²¸¹ºḄᑁ»¼?oெ¾¿ÀজÁᙬ"0Âᙬ"ÃÂᙬ"0Âᙬঝ1256H,3280Hঞ3721H,1টEAHঠ}~Ä"}~ÅᑴডREPT1᪗ÇḄᙢᙬঢTESTENDP,ENDMণEBPতPUBLIC,EXTERNথ38HODH0AH⚪4.4ÈÉÊËf⚪4-1xyḄ᡻EÌÍ"#$ᙠÎb᪗ÇÏGÐmÑÒÓ|஺f᝞¨ÔxyÕEGÑÒᦪṹ1234஺¾¿Àjmplabl1;Áᙬnopmoveax,??’calldispclabl1:moveax,’1'calldispcjmpnearptrlabl2;Á×nopmoveax,'?'calldispclabl2:moveax,’2,calldispcmoveax,offsetlabl3jmpeax;6ᘤ0Âᙬnopmoveax,'?’calldispclabl3:moveax,’3'calldispcmoveax,offsetlabl4movnvar,eaxjmpnvar;67ᘤ0Âᙬnopmoveax,'?’calldispclabl4:moveax,’45

25cal1dispc⚪45¨ᵨ“SHREAX,2”àEAXXḄDIáᐭCF᪗ã"ᯠGᵨJC/JNCᢣäJZ/JNZᢣåᡂf⚪4-3ḄÓ|஺ெ¾¿Àmoveax,56hᎷ2bᦪshreax,2D1áᐭCF᪗ãjncnomDI=0ᩩOᡂø"ùúûxy⚪46᡻E᝞9xyᱏvG"CMPᢣᑖý¨Ô5bþ᝱᪗CFஹZFஹSFஹOFPF01?ᩩᢣᢣJccḄᩩᡂஹmoveax,20hcmpeax,80h'()*CF=1ZF=0SF=1OF=0PF=1+,ᩩᡂஹḄᢣᨵ.JCJSJPJNZJNO'/⚪4.712⚪4-4345ᦋ78Ꮤ᪥;஺=>?@ABCDEᨵᐵGEHIḄJKL34ᐹᨵNCOPḄQRឋ஺'()*includeio32.inc.datamsglbyte,Pleaseinputacharacter:',0msg2byte*TheASCIIcodeofthecharateryouenteredis:',0msg3byte*Thecodewithevenparityis:',0.codestart:moveax,offsetmsglcalldispmsgcallreadccalldispcrlfmovebx,eaxmoveax,offsetmsg2calldispmsgmoveax,ebxcalldispbbcalldispcrlfandal,7fhjpnextoral,80hnext:movebx,eaxmoveax,offsetmsg3calldispmsgmoveax,ebxcalldispbb

26exit0endstart'/⚪48ᙠoᵨ᜻Ꮤ᪥;rsᦪuḄvᦈxyz;{ᦪursḄ|}ឋ஺2᝞L᝞oᵨᏔ᪥;LᙠvᦈᑮḄᦪuLᐸᒹ“1”Ḅᦪyz஺ᡈᏔᦪLᔲᑣ8rs┯஺8ᙠLᙠvᦈxᑏ@᪵Ḅ34L᝞Ꮤ᪥;|}DE┯HILrs|}ᑣ஺Ꮇr〈⁚ᦪuஹᨬ᪥;LvᦈᑮḄᦪu¡¢£ᙠRdata¤¥஺'()*;ᦪu§Rdatabyte57h¨¢£vᦈḄᦪuerrorbyte'Error!',0¨©ṹ§moval,Rdataandal,Offh;᪗PF«᧜“1”Ḅᦪjpdone¨ᦪᏔᦪL|}moveax,offseterror;ᦪ᜻ᦪLDE┯calldispmsgdone:'/⚪4.9ᢣCDQ1EAX®᡽°ᑮEDX,ᓽ.EAXᨬ0,ᑣEDX=0.EAXᨬ1,ᑣEDX=FFFFFFFFH஺²378zᢣJK஺³()1testeax,8000h´µᨬjznextlᨬ0ZF=1,ᑮ᪗®NEXT1movedx,Offffffffhᨬ1,¶4᡻¸.¹EDX=FFFFFFFFHjmpdoneºᩩL»¼½@ᑖ¿nextl:movdx,0ᨬ0ᑮÀ᡻¸.¹EDX=Odone:'()2ᵨᢣNP஺roleax,1rcredx,1saredx,31roreax,1ூ/⚪4.103L✌ᐜ´µÄ¤¥DVARḄᨬL᝞1,ᑣDEÅ“L”¨᝞ᨬ1,ᑣ´µᨬÆL᝞ᨬÆ1,ᑣDEÅ“R”¨᝞ᨬÆÇ1,ᑣDEÅ“M”஺'()*;ᦪu§dvardword57h;©ṹ§moveax,dvartesteax,80000000hjnznextltesteax,1

27jnznextrmoval,'M'jmpdonenext!:moval,*1/jmpdonenextr:moval,*R*done:cal1dispc'/⚪4.11ᑏ@34LᐜGEsᐭᦪ“InputNumber.0Ï9”,ᯠÑᙠÒ@¸DEsᐭḄᦪLÓÔ¨᝞ÕᐭÖ0Ï9ᦪL×GE┯"Error!”LØÙsᐭᦪ஺³()*¨ᦪu§inmsgbyte*Inputnumber(0^9):',0ermsgbyteOdh,Oah,*Error!Inputagain:',0¨©ṹ§moveax,offsetinmsg¨GEsᐭᦪcalldispmsgagain:callreadc¨ØÙᢥÕcmpal,1O';ᦪá0?jberdispcmpal,*9';ᦪã9?jaerdispcalldispcrlfcalldispcjmpdoneerdisp:moveax,offsetermsgcalldispmsgjmpagaindone:'/⚪4.12ᨵ@✌ᙢᙬARRAYḄ20ÄḄᦪæLÒᑡ34§ḄJK஺movecx,20moveax,0movesi,eaxsumlp:addeax,array[esi]addesi,4loopsumlpmovtotal,eax'()*ë20ÄḄL¢£ᙠTOTAL¤¥Lᐵ?ì?í஺'/⚪4.133¡î⌕ðñò8Ḅóᦪ஺83ðñòôõö8Ḅóᦪ,Ó¢£ᙠSPACEᓫᐗ஺'()*¨ᦪu§stringbyte'DoyouhavefunwithAssembly?',0;,0ÓúḄôspacedword?

28;©ṹ§movesi,offsetstringxorebx,ebx;EBXᵨýðñõöᦪagain:moval,[esi]cmpal,0jzdonecmpal,20h;õöḄASCIIṹ20Hjnenext;ÿஹincbx;ஹᦪ1next:incesijmpagain;!done:movspace,ebx;&'()*+⚪4.14/0ᑏ231001667᦮ᦪ9:Ḅ<=஺᝞):@A166BḄD*65535/,ᑣ&'ᐸ:ᑮWORDSUM,᝞@AᑣQR'Overflow!'஺*YZ/;ᦪ[\arrayword2005,2008,98dup*1394/;Ꮇc1001667᦮ᦪwordsumword?errorbyte*Overflow!’,0ghṹ\andebx,0movecx,100xorax,axagain:addax,array[ebx*2]jcoverincebxloopagainmovwordsum,axover:moveax,offseterrorcalldispmsg*+⚪4.15/ᙠmnopqḄBrstuvᔲᒹy“BUG”~Brs஺᝞)'ᙠQR“Y”ᔲᑣQR“N”஺*YZ/;ᦪ[\stringbyte'Ifyoufindanyerrorintheprogram,youcanDEBUGit.’count=sizeofstringbugbyte'BUG';hṹ\movecx,countmovedi,offsetstringLI:movesi,offsetbugpushedimovedx,sizeofbugLN:moval,[esi]cmp[edi],aljneL2

29incesiincedidecedxjneLNpopedimoval,*Y'jmpL3L2:popediincediloopLImoval,*N*L3:calldispc*+⚪4.16'tᨵm86BCDṹᦪ[&'ᙠmBt஺ᙠ◤⌕QR⌕QR0஺ᵫ6ᦪ◤⌕ᑭᵨ!᝞ᜐᳮ0:ᦪ[t¡Ḅ0ᕖ£¤c¥m᪗§஺0<஺*YZ/;ᦪ[\beddword00371002hghṹ\movesi,bedempesi,0jnzgoonmoval,'O'cal1dispcjmpdonegoon:movecx,8xorebx,ebx;EBX=O,⊤R«¬0again:rolesi,4moveax,esiandeax,Ofh;EAX®46&'¯⌕QRḄBCDṹempebx,0;EBXH0,²³0,⌕QRjnzdisp;EBX=O,²³«¬0empeax,0jznext;EAX=O,²³0,QRmovebx,1;EAXW0,´ᨵ0µ¶EBX=1WOdisp:addal,30hcalldispenext:loopagaindone:*+⚪4.17nomBrsḄpqᒆ◀ᐸtᡠᨵḄBr஺º»Brsᨬ½mBr¾¿⌲ᔣᑨÃஹÄᜐᳮ஺*YZ/;ᦪ[\stringbyte*Letushaveatry!,,Odh,Oah,0ghṹ\movecx,sizeofstring

30cmpecx,2jbdone1eaeax,string;QRᜐᳮḄBrscal1dispmsgmovesi,ecxdecesioutlp:cmpstring[esi],*';ÅÆᔲjnznext;!movedi,esi;ᐭᒆ◀ᑖÉdececxinlp:incedimoval,string[edi];•6¥movstring[edi-l],alcmpedi,ecxjbinlpnext:decesi;cmpesi,0jnzoutlp;Ì0(Í1eaeax,string;QRᜐᳮ½ḄBrscal1dispmsgdone:*+⚪4.18Î3Ï+⚪3.14ᙠÐÑÒQRASCII⊤Óᙠᦪ[\c¥⊤ÔÕÖ,0<×ASCIIhṹØÙᐭᶇÛ6¥Ḅ⊤ᯠ½ÝᵨQRÞ¬*◤⌕ᑭᵨß!/஺*YZ/includeio32.inc.datatablebyte'|0123456789ABCDEF,13,10oyte1,io,IUtabibyte6dup(36dup(?),13,10)byte0.codestart:movebx,offsettabimovedx,'|02'movax,2020hmovesi,6againO:mov[ebx],edxaddebx,4movecx,16again1:movwordptr[ebx],axaddebx,2incalloopagainladdebx,2addedx,1decesi

31jnzagainOmoveax,offsettablecal1dispmsgexit0endstart*+⚪4.19ºᢥ᝞å²³0ᑏ~<=æ~<=Þ¬æçᵨASCIIṹ⊤RḄè6ᓝᑴᦪᣚÌBCDṹᐭìíᦪæDH=ᓝ6ᦪḄASCHṹDL=j6ᦪḄASCIIṹìíᦪæAL=îïBCDṹ*YZ/asctobprocshldh,4moval,dhanddl,Ofhoral,dlretasctobendp*+⚪4.20ðñḄòBCDṹÝ᦮ᢣ¶AAM᡻ḄõöæAH-AL+10ḄᖪAL-AL+10Ḅøᦪ஺ᑭᵨAAM«ù×ALtḄ100ᑁᦪ[ᣚÌASCIIṹ<=᝞åæxorah,ahaamaddax,3030hᑭᵨû\<=0ᑏmQRALtᦪØ*0ü99Ḅ~<=஺*YZ/disp99procxorah,ahaamaddax,3030hpushaxmoval,ahcalldispcpopaxcalldispcretdisp99endpூ+⚪4.220ᑏmþ<=ᙠÿᢥᐸḄASCUṹᩭ᝞ᢥESCASCHṹ1BHᑣ⌨஺ᵨ!"ḄHTOASC#஺$%&;(ṹ)*again:callreadccmpal,Ibhjzdone

32movbl,almoval,*:'cal1dispcmoval,blrolal,4callhtoasc;ᵨ#calldispc;iGHmoval,blcallhtoasc;ᵨ#calldispc;GHcal1dispcrlfjmpagaindone:I⚪4.22Kᑏ#MNOPᑴRSEAX"32TᦪVWXY*Z[஺$%&;(ṹ)*moveax,8F98FF00Hcalldispbd;ᵨ#;(ṹ)#dispbdproc;32TOPᑴᦪḄdpushecxpushedxmovecx,32;⌕dḄGHᦪdbd:roleax,1;ALijkl,Tpusheaxandal,Olh;nALᨬpTaddal,30h;qᓄᡂtḄASCLLṹcal1dispc;NOPᑴḄRSpopeaxloopdbdpopedxpopecxretdispbdendpI⚪4.23w⚪4-16Ḅ32Txyᘤᦋᵨ16Txyᘤ|}~d-26=+2”1ḄᦪV஺$%&;ᦪV)arrayword12345,-1234,32767,-32768,0,667writebufbyte6dupO&(ṹ)*movecx,lengthofarraymovebx,0again:movax,array[ebx*2]callwritecalldispcrlf

33incebx;ebx(⊤array"Ḅᦪdececx;ecx(⊤ijḄᦪjnzagain(ṹ)#wi'iteproc#pushebxpushecxpushedxmovebx,offsetwritebuf;ebxᢣᔣtestax,axjnzwritelmovbyteptr[ebx],30hincebxjmpwrite5writel:;0ᑣ✌ᐜᑨjnswrite2ᑣ☢¢£ᑮwrite2movbyteptr[ebx],',incebxnegaxwrite2:movex,10pushex;©*=10§ᐭ᪘ª⌨᪗¬write3;write3eaxij◀N10W¯°ᦪḄASCIIṹ§ᐭ᪘empax,0jzwrite4xordx,dxdivexadddx,30hpushdxjmpwrite3write4;°ᦪḄASCHṹ᪘,⍗ᑮ10²³Wqᑮwrite5´popdxempdx,exjzwrite5movbyteptr[ebx],dlincebxjmpwrite4write5´movbyteptr[ebx],0moveax,offsetwritebufcalldispmsgpopedxpopecxpopebxretwriteendpI⚪4.24µὃw⚪4-17,Kᑏ}~32T·H¸᦮ᦪdᐭḄ#WXY*Z[஺

34'/ᦪV)count=10arraydwordcountdup(O)tempdword?readbufbyte30dup(0)errmsgbyte'Inputerror,enteragain!',13,10,0msglbyte,Inputtenunsignednumbers,eachnumberendswithenterkey/,13,10,0msg2byte*Checkthenumbersyourinputted:,,13,10,0;(ṹ)*moveax,offsetmsglcalldispmsgmovecx,countmovebx,offsetarrayagain:callreadmoveax,tempmov[ebx],eaxaddebx,4dececxjnzagainmoveax,offsetmsg2calldispmsgmovedx,offsetarraymovecx,countnext:moveax,[edx]calldispuidcalldispcrlfaddedx,4dececxjnznext(ṹ)#readprocpusheaxpushecxpushebxpushedxreadO:moveax,offsetreadbufcallreadmsgtesteax,eaxjzreaderrcmpeax,12jareaderrmovedx,offsetreadbufxorebx,ebxxorecx,ecxmoval,[edx]

35cmpa],+jzreadlcmpa],,jnzread2jmpreaderrreadl:incedxmoval,[edx]testal,aljzread3;᝞0,ᑣÁÂÃGHÄÅ´Æread2:cmpal,'O'jbreaderrcmpal,,9'jareaderrsubal,30himulebx,10;ebxᵨᩭyÇᜐᳮḄᦪVjcreaderrmovzxeax,aladdebx,eaxjncreadlreaderr:moveax,offseterrmsgcalldispmsgjmpreadOread3:movtemp,ebxpopedxpopebxpopecxpopeaxreadendpI⚪4.25KᑏYÊG⁚᪥ZÍḄ#஺ᡠÏ“᪥ZÍ”ᢣÒÓPTḄÔÕÖᵨ×ØÙÚÛḄÜឋ஺*ÞßᐭàµᦪᨵᦪVᦪÍᦪVḄ✌ᙢᙬ஺#〈åÍ´æàµᦪ஺$%&YÊG⁚᪥ZÍḄçᵨ;ᐭàµᦪèDS:EBX=ᦪíḄ)ᙢᙬ:îlᙢᙬECXOᐗðᦪ;àµᦪ:AL=᪥ZÍ;ÁÂè◀EAX/EBX/ECX᜜Òòóᐸôxyᘤchecksumprocxoral,al;ÔÕᘤõ0sum:addal,[ebx];åÍincebx;ᢣᔣG⁚loopsumchecksumendp

36(I⚪4.26)Kᑴ3#¯32TOPᑴᦪᵨ8Tᓝ÷PᑴRSᙠùúᩭᑖüýᵨ᝞3þµᦪÿ⌴ᔠ3஺(1)ᵨEAXᘤ⌴32ᑴᦪ(2)ᵨtemp⌴32ᑴᦪ(3)ᵨᚮ᪘⌴32ᑴᦪ(!)(1)#ᦪ$%wvarword307281AFH;7ṹ%moveax,wvarcalldispmoval,,Ifcalldispc#7ṹ%Ddispprocpushebxpushecxmovecx,8#8dhwl:roleax,4movebx,eaxandal,Ofh;LᣚNASCIIṹaddal,30hcmpal,'9'jbedhw2addal,7dhw2:calldispcmoveax,ebxloopdhwlpopecxpopebxretdispendp(2)#ᦪ$%wvarword307281AFHtempword?;7ṹ%moveax,wvarmovtemp,eaxcalldispmoval,H>calldispc#7ṹ%Ddispprocpushebxpushecx

37movecx,8#8moveax,tempdhwl:roleax,4movebx,eaxandal,Ofh;LᣚNASCIIṹaddal,30hcmpal,,9*jbedhw2addal,7dhw2:calldispc;[\]^_moveax,ebxloopdhwlpopecxpopebxretdispendp(3);ᦪ$%wvarword307281AFH;7ṹ%pushwvarcalldispaddesp,4moval,*Ifcalldispc#7ṹ%Ddispprocpushebpmovebp,esppushebxpushecxmovecx,8#8moveax,[ebp+8]dhwl:roleax,4movebx,eaxandal,Ofh;LᣚNASCIIṹaddal,30hcmpal,'9'jbedhw2addal,7dhw2:calldispcmoveax,ebxloopdhwlpopecxpopebxpopebpretdispendp

38`a⚪4.27ᔠc⚪4-11Ḅeᓫghhij]kᐭhṹḄmkᐭḄno^_pq〉stuᑮ]^⁚hṹ஺`!x;ex0427.asmincludeio32.inc.datakeybyte?msgObyte*Enteryourpassword:*,0passwbyte50dup`0xerrormsgbyterPassworderror,inputagain!?,13,10,0bufnum=255bufferbytebufnum+1dup(0);kᐭ◤⌕Ḅmsglbyte*Entermessge:',0msg2byte*Encryptedmessage:',0msg3byte*Originalmessge:',0.codestart:moveax,offsetmsgO;\kᐭghhṹcal1dispmsgmoveax,offsetpassw;iᐭᦪEAXcallreadmsg;ᵨkᐭ^_Dkᐭhṹmovecx,eaxdececxxorebx,ebxmoval,passw[ebx]againO:incebxxoral,passw[ebx];ᵨeᓫḄᡈuᑮghᐵ^1oopagainOmovkey,al;ghᐵ^moveax,offsetmsgl;\kᐭ^_calldispmsgmoveax,offsetbuffer;iᐭᦪEAXcallreadmsg;ᵨkᐭ^_Dpusheax;^_ᦪᐭᚮ᪘movecx,eax;ECX=▭kᐭḄ^_ᦪNḄᦪxorebx,ebx;EBXᢣᔣkᐭ^_encrypt:moval,key;AL=ghᐵ^xorbuffer[ebx],al;ᡈghincebxdececx;¡¢£ᢣ¤¥loopencryptjnzencrypt;ᜐᳮ©]^_moveax,offsetmsg2calldispmsgmoveax,offsetbuffer;[\ghªḄhᦻcal1dispmsgcal1dispcrlf

39again:moveax,offsetmsgO;\kᐭhhṹcalIdispmsgmoveax,offsetpassw;iᐭᦪEAXcallreadmsg;ᵨkᐭ^_Dkᐭhṹmovecx,eaxdececxxorebx,ebxmoval,passw[ebx]againl:incebxxoral,passw[ebx];ᵨeᓫḄᡈuᑮghᐵ^loopagainlcmpkey,al;¬ghᐵ^®¯jznext;hṹ°¢ᑣ²hmoveax,offseterrormsg;\kᐭhhṹ┯´calldispmsgjmpagainnext:popecx;µᚮ᪘¶·^_ᦪNḄᦪxorebx,ebx;EBXᢣᔣkᐭ^_decrypt:moval,key;AL=hᐵ^xorbuffer[ebx],al;ᡈhincebxdececxjnzdecrypt;ᜐᳮ©]^_moveax,offsetmsg3calldispmsgmoveax,offsetbuffer;[\hªḄ¸ᦻcalldispmsg`a⚪4.28ij]eᓫḄ¹᦮ᦪḄgᘤ஺`!x;ex0428.asmincludeio32.inc.datamsglbyte*Entertheintegers:,,13,10,0msg2byte13,10,*Enterspacetocontinue!Enteranyotherkeytoexit!’,13,10,0.codestart:moveax,offsetmsglcalldispmsgcallreadsidmovebx,eaxmoval,'+'calldispccalldispcrlfcallreadsidaddebx,eax

40moval,'calldispcmoveax,ebxcal1dispsidcal1dispcrlfmoveax,offsetmsg2calldispmsgcallreadccmpal,20hjestartexit0endstart`a⚪4.29ᑭᵨᓝ½ᑴ^⁚[\DDISPHBij]µ¾ᙢᙬᑮÁᙢᙬ⌲^⁚[\ÃÄᑁÆḄDDISPMEM஺ᐸᐭᦪ¥£É*=ÊËᙢᙬECX=^⁚ᦪ`ÄḄÌÍx஺¢ÎÏᑏ]²஺`!x;ex0429.asminWindowsConsoleincludeio32.inc.datavarbyte*Thisisatest!,.codestart:;moveax,offsetvarmovecx,sizeofvarcal1dispmemexit0;Ddispmemprocpushebxmovebx,eaxdispml:moval,[ebx]calldisphbmoval,''calldispcincebxloopdispmlpopebxretdispmemendpendstart`a⚪4.30mc⚪4-19ᑖÔᵨDÕᙽஹDØÙDØᒹÛÜᡂᨬßà᡻²ᦻâ஺ெa⚪4.31Ô᝞©ᭆæ¥çஹçᵨஹçᢣ¤ஹçèéஹçêÏ஺

41解劄曲'足义君周用ëìíç²î¸ᵫ]í■çêÏñᢣ¤MACROÙENDMᩭóᡂ஺宏蜉令çôªḄᵨ஺ᙠᵨçᢣ¤Ḅᑏ©çöª÷øᦪ஺宏1开ᵨçÎᐸùúûüᢣ¤ᡠþÿᢣ஺却编ᙠᵨḄṹᑡᢣ஺匚ᢣᵨḄ஺⚪4.32!ᵨ"ᑴ$%ᐭ'%()ᦪ+,-⚪4-21Ḅ./0ᵨREADMSG'DISPMSG12஺342⚪4.33!ᵨ"ᑴ$%()ᦪ+,56789:ᑁ<Ḅ=>⚪4.29Ḅ./2஺?@ᦋ=>BC-᝞E=>166F⁚128H2EIJᐜ=>✌678ᓫᐗḄOPᙢᙬᯠTᵨᑈVᑖ◞78ᑁ<஺342ூ⚪4.34᝞Z[\ᓫḄ]ᦋ^-⚪4-22Ḅ_`aᨵ“OK”'“Cancel”c6ᢥe஺342fMBJDKghij1,ᓽlMB_OKequ1⚪4.35mn+o-⚪4-23'-⚪4-24,pᙠqr?᡻ᦻuḄvwxᡂᑡ⊤ᦻu஺ெ⚪4.36Pentiumᜐᳮᘤᨵ-664HḄ᪗ᦪᘤTime-StampCounter஺ᦪᘤE6ᕜ⌴12;ᙠmᵯ'HTᦪᘤ0஺ᢣ"RDTSC”᡻TfᙠEDX32H2'EAX32H2Ḅ64H᪗ᦪᘤ஺ᑭᵨRDTSCᢣᙠ56)ᦪ^᪗ᦪᘤᯠT)ᦪTᓽ᡻RDTSCᢣpf^Ḅ᪗ᦪᘤḄᦪ^ᑮḄ¡¢£)ᦪ◤⌕Ḅᕜᦪ¦@ᕜ§¨2஺©ᑭᵨªᔠ=>56)ᦪḄᕜᦪ஺342512⚪5.1\4⚪1¬®ᜐᳮᘤḄᦪ¯°±£²ᔣḄ´28086Ḅᙢᙬ'ᦪ¯°±¬⌕ᑖᵨ´32ᐹᨵ¶᝱/¸Ḅ¹º%(»¼ᕡḼ¬´4°±ᕜwḄ§¿À᝱£6¬ÁÂÀ᝱´

42(5)ÅÆÇ〈£É¬Ç〈´(6)°±ᦪ¯Ç%¬⌕°±ÊË´(7)Ìͬ?@Îᨵ°±ÏV´(8)32HPCn¬ÐᵨÑÒ°±Ó᪀Õ0£ᓫ°±Ó᪀´(9)USB°±ᨵÖ6×±Øᡂ´(10)¬£ÙÚÛ®ḄᓽÜᓽᵨPnP(Plug-and-Play)ᢈÞ´(34)জᦪ¯°±áâḼᜐᳮᘤ8ãᘤஹ᜜Ḅᦪ¯æᣚè?@%ᐭé?@%(ᦑᐸ£²ᔣḄ஺ঝí¹º6ᦪ8086Ðᵨîᙢᙬ°±'ᦪ¯°±ᑖᵨ஺ᓽᦪ¯°±ᙠ0ïðñᐹᨵᙢᙬ°±Ḅ./஺ঞᐹᨵ¶᝱/¸Ḅ¹º%(ᕈ,»À᝱¨ô!î6»ᢙ[Ḅ᜜öᘤuÏV÷øg%(ùᓽúû¹ºḄ"ᑴᐸüöuýIô!஺টᜐᳮᘤḄÿᘤI/O஺ᜐᳮᘤᑮᘤᡈI/OᢥḄᕜᦪᣚ!"#ᐭ%&'()᝱Tw஺'()᝱+▭-.%&/ᢝ12)᝱3Ḅ!4ᕜ஺ঠ678〈.ᜐᳮᘤ:;<✌ᙢᙬஹABCDEFGFḄᓫᐗJKᑏM&ᦪ஺ড-BGOM&◤⌕RᑴḄTUᜓ"◤⌕WXYZ◤⌕RᑴḄTUᜓ"ᡠC◤⌕\]஺ঢ`a!b.ᵫde(Handshake)ὶh(ij)12Rᑴ".ᵫ!4Rᑴ஺ᦑ!412BᨵBn஺ণᓫp᪀▲ᑴstM◤⌕uv8wvḄxy஺32zPC{|ᵨM~Ḅp᪀஺ᔜ~ᵨxᜐᳮᘤᱏ"COᜐᳮᘤᱏḄv8wᦪ"uv᜜U;

43Ø¢⚪5.3ÙÚ⚪1Û&ᜐᳮᘤᐹᨵ16&ᙢᙬ"ÝBCᵨA⊤Þᨬ¦zᙢᙬ12"ᵨA15⊤Þᨬuᙢᙬ12஺28086ᨵ3&ᨬḄKᑏRᑴ12"à.M/á"஺38086⚜ᢣã!"ᙠᐸ-åæ±________è᡻ᢣã"MOVAX,[BX]”!"ᙠᐸ-åæ±è᡻ᢣã"MOV[BX],AX”!"ᙠᐸ-åæ±__________஺48086n'(Ḅᕜᵫ_________&T)᝱êᡂ"Pentiumn'(Ḅᕜì_________&T)᝱êᡂ஺᝞îᜐᳮᘤḄ!4⚣᳛100MHz"ᑣ¾&T)᝱ḄᢝF!ò஺58086ᜐᳮᘤI/OK!"ᐸM/15¦"☢èISAḄ¦ᨵᦔô¶I/OK஺PCIᵨC/BE[3::0]#õṹ⊤¬I/OKᕜ஺Ø6ᓰᵨᦪ8w"%÷◤⌕øùúû\]ஹஹpü4&▤º஺7USBᳮý-ᨬMÑGO&USBUᜓ"USB2.0Ãᢝ¦vஹᐰvuv480Mb/sÿ᳛஺8PCIᐳᵨᦪᙢᙬᡠᦪ◤⌕▤▤!"ᙢᙬᦪ$▤ᨬ&'ᣚᙢᙬᦪ஺9PentiumḄ3ᨬ*+Ḅ,ᑏ.ᑴ012M/3஺10ᵨ4⌕5ᜐᳮᘤ9ᐭ;<=᝱Ḅᙠ8086@201READY,ᙠPentium@201ABISA2஺CDজ0ঝ,GᑏWRঞIJᘤ,IJᘤ,IJᘤᑏট4,2,10nsঠMᨵᦔ1OR,0010©Qᙬᦪ〈ঢ127,1.5Mb/s,12Mb/sণᙢᜐᦪ—তD/C,W/RথBRDY,I/OCHRDYX⚪5.4ᜐᳮᘤᨵZ4ᨬ*+Ḅ[\ᕜ^_CDIJᘤ,ஹIJᘤᑏI/O,ஹI/Oᑏ஺X⚪5.58086ᜐᳮᘤḄᐭ.ᑴᨵRESET,HOLD,NMIINTR,ᐸbcᔜ2ef_ghiᨵᦔ8086CPUjklmnB_CD

44RESETopᐭqᵯsᨵᦔ஺t01ᨵᦔjuvᜐᳮᘤwᑮᐸyz=᝱;|}~ᦔCPUz\஺HOLD52qᵯsᨵᦔḄᐭ஺t01ᨵᦔ⊤ᐸ.ᜓᔣᜐᳮᘤᵭvᵨᩭᵫᜐᳮᘤ.ᑴḄ஺NMI52ᑭᵨ@ᓣᨵᦔḄᐭ஺t01ᨵᦔ⊤᜜ᔣCPUᵭ஺INTR52ߟqᵯsᨵᦔḄᐭ஺t01ᨵᦔ⊤5ᜓᔣᜐᳮᘤᵭ஺X⚪5.6ᭆᢣᕜ^ஹᕜ^¡ᘤᕜ^ஹᕜ^ஹT=᝱஺CDᢣᕜ^ᩩᢣ£¤ᢣஹ¥ṹᑮᨬ§᡻©ªᡂḄ¬஺ᕜ^¡ᘤᕜ^ᨵᦪ'ᣚḄ[\஺ᕜ^ᜐᳮᘤḄ*+\⁚¯ᵫ°±qᵯsMᵯs}ᕜ^஺T=᝱ªᡂᱯ³[\Ḅᕜ^஺ᵫ4´@T=᝱;4ᕜ^ᡠµµjὅ·}¸஺X⚪5.7¹8086ᔜT=᝱Ḅ⌕º»஺CDT1=᝱ᕜ^Ḅᕜ^⌕ᵨ4kIJᘤᙢᙬᡈI/Oᙢᙬ½T2=᝱k,/ᑏ.ᑴ஺T3=᝱┝Iᙢᙬஹᜐᳮᘤ!"Ḅ.ᑴᦪᙠ@ÀÁÂᢝᨵᦔÄT3ḄÅÆÇAREADY01È©ÉÊ஺READYᨵᦔÈᐭT4ᕜ^஺T4=᝱ᕜ^ḄᨬËᕜ^ᜐᳮᘤIJᘤᡈI/OÌÍÀÁÈ©ᦪ〈ÎᑮªᡂÏ}Æᕜ^ÐÑÒᜓ஺Tw=᝱;<=᝱஺ᜐᳮᘤᙠT3ÅÓlREADY~ᦔË9ᐭTw஺Tw=᝱Ḅ01ÔÁT3Ḅ=᝱ஹÂᢝÕ஺X⚪5.8CÖ8086ᨬ×Ø᝱Æ01ḄbcCLK,A19/S6-A16/S3,AD15-AD0,ALE,M/IO,Ù᪗஺ÛÜhiᙠᐹᨵ;<=᝱ḄIJᘤ,ᕜ^ḄÞßà஺CDCLKᐭ஺2•⚣᳛ã³Ḅᦪäᐸ⚣᳛å2ᜐᳮᘤḄ\⚣᳛\⚣᳛Ḅ᎔ᦪå2ᕜ^Ḅ´çè஺A19/S6éAI6/S3ᙢᙬ/=᝱ᑖoᵨ012Ø4ᐹᨵë᝱»ìḄk஺íî01ᙠïðIJᘤḄᕜ^kq4pᙢᙬA19éA16,ᙠïð᜜Ḅᕜ^kMᵯs~ᦔ½ᐸ´k=᝱S6éS3஺AD15éAD0ᙢᙬ/ᦪᑖoᵨ01ᐳ1601ᵨ\ᙢᙬ2ᓫᔣk½ᵨ\ᦪ2òᔣᐹᨵë᝱k»ì஺ALEᙢᙬ┝Iᐕô2ë᝱ஹkஹqᵯsᨵᦔḄ஺ᨵᦔ⊤oᵨ01AD15éAD0A19/S6éA16/S3@õᙠ〈ᙢᙬ஺

45M/IOïðIJᘤᡈὅI/O,2ë᝱kt01qᵯs⊤ᜐᳮᘤjïðIJᘤöᙢᙬA19éA0!"20pḄIJᘤᱥᳮᙢᙬ஺t01Mᵯs⊤ᜐᳮᘤjïðI/OÌÍöᙢᙬA15-A0!"16pḄI/Oᙢᙬ஺~,.ᑴÙ2ë᝱ஹkMᵯsᨵᦔ஺ᨵᦔ⊤ᜐᳮᘤõᙠ£IJᓫᐗᡈI/OÌÍ,¤ᦪ஺WRᑏ.ᑴ2ë᝱ஹkMᵯsᨵᦔ஺ᨵᦔ;⊤ᜐᳮᘤõjᦪᑏᑮIJᓫᐗᡈI/OÌÍ஺ALE_1LRDREADY|[36-1ᐹᨵ67TwḄ9:ᘤ;12ᕜ=>-X⚪5.9᝞ÆᭆúᱏஹüýஹþÿஹᙢᙬஹᦪஹᑴISAஹPCI஺ᱏᢣᜧᡂᵯᱏᑁᡈ"#$ᔜ&'(ᘤ*+,ᙠ./Ḅ;ᵨ3ᱏ45+஺673ᜐᳮᘤ▬*Ḅᘤ*;5+,Ḅ;<3ᱏ஺"#=>ᢣ?@"#ḄA⌕஺CᵨDEFGḄ஺HI7ᦪᢥKLᑴ7ḄMNᙠᦪO⌲7D〈Ḅ஺ᙢᙬRSᙢᙬTU5+VWᣚḄ.YZ஺ᦪRSᦪTU5+VWᣚḄ.YZ஺ᑴᑴ[\ᜐᳮᘤVᑁ]ஹ᜜_W5TUḄ.YZ஺ISAᓽIBMPC/ATaᜐᳮᘤ80286bcdᡂḄᑖᡂfᢝ87hiḄj62TkV᡽m167hiḄn36Tk஺PCI᜜_*5+'o〉ᵨ3IA-32ᜐᳮᘤq〉ᵨᐸsᜐᳮᘤfᢝ327V647hituᵨ3327=ᵨ?vwx@$஺y⚪5.10{|(}~Nஹ(}~NV}~N(}~NhiḄᔜᵫᐳᵨḄ~Tkᑴ஺(}~NhiᵫᐳᵨḄ~Tkᑴ᠒ᙽa=Tk

46ᙽ஺}~Nhi◤⌕HandshakeὶTkᑴ~Tkᨵ஺y⚪5.11EISAḄ~⚣᳛8MHz,2~aD〈•327ᦪwxᐸ஺32X84-2X8=16MBpsy⚪5.12PCIᨵ{|ᱯ¢PCI£ᜐᳮᘤᐵᐹᨵ327V647ᦪᨵ+5VV+3.3V¦&_wCᵨ$G§¨ஹfᢝIᜐᳮᘤ"#=᫑Bridgeᵯª«1SA/EISAᐹᨵᓽ¬ᓽᵨḄ®¯°±²•"ᑡ´µ஺y⚪5.13PCIhi᝞·¬ᐭ¹᝱A_ᜓᑭᵨIRDY#Tkᦔஹ¾_ᜓᑭᵨTRDY#Tkᦔ⌕¿Éi¹᝱L¬ᐭᡈÂÊ஺ÄᱯឋaËᵨᡝÍ~+,USB_ᜓ஺y⚪5.15ÎÏUSBḄA⌕ᱯÐËᵨFÑஹ᡽ᐙ±²Ó஺fᢝI&DEÔஹ〉ᵨ☢t஺Ö×ὑஹÖᡂÙஹᓰᵨ"#ÛÜÝ஺y⚪5.16USBḄᘤᨵ{|iᵨA@Oᔲ◤⌕ᘤᘤßàᵨ3áâã᜜USB,ᐭ¢ḄUSB_ᜓ஺A@◤⌕ᘤäåæ᪷ᘤ஺y⚪5.17USB[èfᢝéê&ᦪDEFGÎÏë஺USBḄᦪDEᨵ4&ᑴDE——ᙠUSB_ᜓíîïð~USB"#ñ*ËᵨᑴDEFG_°USB_

47ᜓòᦪஹó〈ᑴᢣôஹõö¹᝱஺ᢇøDE——<3ᡭᓺ@ஹûüý_ᜓ◤⌕DEᜧøᦪaËᵨᢇøDEFG+þDE.ᢇᦪ஺$ÿ——Ḅᦪ◤⌕ᜐᳮឋ⌕ᵨஹ᪗!"ᜓ$஺&'——()Ḅ*᳛,〈./ᦈ12ᦪḄ34.ᵨᦪ56ឋ⌕789:;ឋ⌕79Ḅ᜜"=᝞?@AஹᗓCஹᵯE!஺F6GHIJK(M⚪6.1)ST⚪(1)HIJKUVW8XYᵨZ[HIᘤ]᪀ᡂ`(2)VWb9*cd.9*eᜫ(gcd)`(3)9*iHCacheJKḄ᪗oHIᘤᨵVWqᵨ`(4)VWbCacheḄᙢᙬ᧜v`(5)CacheḄᑏᐭ{ᶍᵨ}~VW⚪`(6)HIᘤḄH.HᕜᨵVW`(7)HIᘤbVWHIᘤ`(8)DRAMᱏWᨵᙢᙬᨵᑡᙢᙬ`(9)ᙢᙬbW`(10)⚓⊤⚗ḄP(D)ᨵVWqᵨ`o(}T)জ¡Uᔜ[HIᘤ]ᙠ¤ஹ*¥.¦§☢Hᙠ©ª஺*¥«ᑣᓫ¦§9®¤ᜧᓫ¦§°H*¥᠒஺ᦑHIJK8XYᵨZ[HIᘤ]஺ঝCachedᑴḼHḄ¶ᑖᑁ¤஺¹ᜐᳮᘤº»¼HḄ½¾¿CacheÀᑴᘤ✌ᐜÃÄCachedbᔲÆᒹÈᨵɾ¿஺ÊᨵᑣᜐᳮᘤË/¼Cache,É[ÍÎÏU9*cd®ÊÐᑣÏU9*eᜫ஺ঞ᪗oHIᘤHḼᦪᡠᙠHḄᙢᙬ12஺টHᙽÕCacheÖḄ;×ᐵJÏ“ᙢᙬ᧜v"CacheÛÜᙢᙬ᧜v6)Z¾Hᙽ×Ýᑮß¾Cacheàd஺ঠᑏᐭ{ᶍᵨ}~ᑏᐭCacheâãH.Cacheᑁ¤8ZäឋḄ⚪஺ডHbᢣç¼/ᑏcé,êᑮᦪëqìᡂᡠíᔊḄ®Hᕜ⊤ïðñHIᘤòᡠᐕôḄᨬ◞஺Hᕜᜧ!H஺ঢHIᘤbᵫëqJKᑭᵨúûHIᘤஹüᦻ]þÿḄஹᙠᘤᘤḄᘤ஺ণDRAMᱏᜧஹᱏᡂ!ᦪ#஺ᦑDRAMᱏ%ᙢᙬ!ᑖ)*ᵨᓽᵨ-ᙢᙬ!.〈0ᢇᙢᙬ஺2ᢇᙢᙬ34ᙢᙬ25ᢇᙢᙬ3ᑡᙢᙬ஺ত8ṹᵯ;<=ᨵ?ᑖᙢᙬ@A8ṹB⌼ᡂᙢᙬD*EFGᓫᐗᓰᨵKᘤᙢᙬ஺থ⚓⊤⚗ḄPQ3RᙠQ(Present),⊤[\⚓☢Gᔲᙠᱥᳮᘤ<஺(a⚪6.2)ᑨg⚪(1)ijḄkl◤⌕opijḄqᔠstuvwk஺(2)ᢣyvwḄopᦪztG8,16ᡈ32QCacheᓾᦪᙽRᓫQ.஺

483R⚓⊤⚗Ḅvwk1A-32ᜐᳮᘤᑁ?ᑖklᘤᣚᜓlᘤ஺Ḅp¡ᳮ¢£Ḅkl஺4ᘤᱏḄᡂ⊤[ᓫQᱏ☢¤ᑴpḄᓫᐗᦪK஺5¦§ᜧ¨©ᵨDRAMᱏ-ᡂ஺6?ᑖ8ṹzªᓄ8ṹᵯ;¬B#zᵨḄ®஺7ij¯°±DRAMᱏu²ᑵ´ᙢᙬµ⌱<Ḅᱏ·ᡠᨵᓫᐗ¹ᑵ´º஺8ijḄᑵ´ᙢᙬu²±ᡠᨵDRAMᱏ஺9FPMDRAMᱏ<Ḅ⚓»ᑏ½¾FG¿À.〈½¾஺10ROMᱏḄÁᑏᡈÂᑏFGᢣÃROMᱏḄÄÅ஺ÆÇÈজ┯ঝÃঞÃটÃঠÃড┯ঢ┯ণÃত┯থÃa⚪6.3Ñ®⚪1ÈÒÓ§ḄᓫQÔ1BByteÈ=bbitsÈ,1KB=B,1MB=KB,1GB=MB,1TB=GB=__________Bo280486ᱏ·CacheḄG,©ᵨ;-ᔠᙢᙬ᧜×஺3ᙠØÙÚᘤ<RAMᢣḄGz»zᑏgᵯÛܨB;ÞROMᢣḄG,ßàp)=tá<ÛÜgᵯÛÜ஺4â᪀R8KX8QḄEPROMᱏ2764,ᐳᨵᦪ!ஹᙢᙬ!஺ᵨ-ᡂ64KBḄROMåᐳ◤ᱏᱏ஺5Ãᘤᱏæ4ᱏ⌱8ṹ)ᨵQijᙢᙬÛçèᨵA8ṹᑣ\ᱏḄ¯ᓫᐗᓰᨵᘤᙢᙬ஺6ØÙÚᱏ⚔?ëᨵᙊíîïðñ஺UòஹMP3óôᘤஹᦪṹõ§ஹKöÚ÷§øᜓ¨©ᵨØÙÚᱏ᪀ᡂᘤ஺7ᙠ8088ᜐᳮᘤij<Ꮇᙢᙬú@A19ûA15ü01011)8ṹᵯ;ýþᨵᦔḄᱏ⌱஺ᱏ⌱ᓰᨵᑮḄᱥᳮᙢᙬᐳᨵ஺8808680286ᵨ16ᦪ!ᑖᡂᏔᦪᙢᙬ᜻ᦪᙢᙬ&'(஺8038680486ᜐᳮᘤᵨᦪ!ᑭᵨ4,⁚ᐕ/01'(஺Pentium234ḄIA-32ᜐᳮᘤᵨᦪ!ᵫ__________'(7ᡂ஺899:;<'ᘤḄᙢ᧜ᙬ>ᨵஹ@A஺PentiumḄLICacheBᵨ᧜>@A஺10CDIA-32ᜐᳮᘤEFGHIJ0000B98200002000H,ᑣLFMᙢᙬ=,FP▲=஺8RSTজ8,1024,1024,1024,1024,240ঝ8KB,4ঞXYZ'ᘤ[ᜫ]^'ᘤ^Z_`[ᜫট8,13,8

49ঠ2ডঢ(UV-)EPROM,FlashMemoryণ58000H,5FFFFH,32KBত32,4,64,8থbc᧜>7ᔠeᐵ᧜>ᐰeᐵ᧜>2h7ᔠeᐵ᧜>00820000H,02000H(j⚪6.4)lmno'pqḄrsឋuᳮ஺(RS)ᜐᳮᘤpq'ᘤwxyz^Zᢣ|}zZᦪᡠpqḄ'ᓫᐗᙠFwᑁᔣḄ0z'pqḄrsឋuᳮ஺m᝞ᙳḄᦪ஺longmean(longd[],longnum)(longi,temp=0;for(i=0;i

50]^ᱏ⌱:V_`ᱏ⌱ᨵᦔbcdYeᱏfg/ᑏijklᦔbᦪnopᕈrst$᝱ஹuvwᦪnxy◞{|d}~ᑁὑ஺[ᑴ:V`ᙠᱏ⌱Ḅᨵᦔᑣᱏᐕᙢᙬ:V⌱ḄᓫᐗᑁḄᦪnᑮᦪnop஺ᑏ[ᑴ:V`ᙠᱏ⌱Ḅ᪗ᨵᦔᑣᱏᦪnopḄᦪnᑏᐭᙢᙬ:V⌱Ḅᓫᐗᑁ஺]S⚪6.8DRAM⌕ᑵ7vw᝞fgᑵ7X]^DRAMᓫ*MOS+ᓫᐗ᩽-ᵯ/ᐙ1ᵯ⊤&!'($᝱஺ᵫ᩽-ᵯ/Ḅ/ᐙᵯᵯ₹¡ᯠ£¤¥¦§¨:;©ᜫᡠ⌕45Yfgᑵ7ijஹᓽ®ᑁ/ஹ1ᜧ°ᑏᐭ஺vwḄᑵ7±ᑴᵯ²³ᑵ7gᙢᙬDRAMᱏḄ´µg⌱ᑵ7஺¶▭ᑵ7[ᑴᵯ²ᑵ7gᙢᙬ¸b〈ºvwᡠᨵDRAMᱏᡠᨵDRAMᱏ»ᙠ¸bfgµgḄᑵ7ij஺ᑵ7[ᑴᵯ²O¼½¾gᙢᙬ¿|ᙠµ#b--◞ᑁÀ)µ¾ᑵ7ijÁÂÃ8ÄᡠᨵDRAMᱏḄᡠᨵᓫᐗÅᑮÆbᑵ7஺]S⚪6.9Ç᥎ROMஹOTP-ROMஹEPROMஹEEPROMFlashROM?]^ÇÉROM`ÊËÇÉMNஹ⌕8Ḅ:;ÌÍᑴjᙠᱏÎC°Ï4ÂÐᦋ஺OTP-ROM`eÒᱏᔆbḄ:;ᐰ“1”ᐕᵨᡝfgµ¾ឋ×ØÙCÚ4ÂÐᦋ஺EPROM`µÛᢣdᵨÜ᜜ᐝß◀ஹ|dáâ×ØḄROM஺EEPROM`Ïã⊤ºE2PROM,ᐸß◀×Ø]ᓽßᑏ^ÊËᵯḄäåᩭfgd¶r“ᙠy×Ø”“ᙠZᵨ×Ø”FlashROM`µ!7éḄᵯß◀d×ØROMᱏÂæß◀᦮*ᱏᑁ/஺]S⚪6.10ëìᦟᩞï6-7138ðṹᘤḄᡠᨵðṹopYZḄᙢᙬó஺]^VUôõ7Ḅᙢᙬóö¾`E0000HôE3FFFH,E4000H-E7FFFH,E8000H-EBFFFH,EC000H-EFFFFH,F0000HôF3FFFH,F4000HôF7FFFH,F8000HôFBFFFH,FC000HôFFFFFH஺]S⚪6.11ᘤᱏḄᐰðṹᑖðṹXᔜᨵᱯúX]^ᐰðṹ`ûᵨᐰvwᙢᙬxyfgðṹ஺ᱯúᙢᙬüµ*ᓫᐗýYZµ*ᘤᙢᙬ]þÿᯠᡂḄᐸᙢᙬ஺ᑖṹᵨᑖᙢᙬṹ஺ᐸᱯᨵ"#$ᨵ%ᵨḄᙢᙬ&'(ᨵ)*+ṹ,)#+ṹᢣᔣ/"#ᓫᐗ23ᙢᙬ45஺

5178⚪6.12:;᝞=ᔜ#?@AḄBCDE?᡽G?᡽ᐙ?IJK?:UMALJK?ᙽUMB,NO?:HMA,PQ?஺7RSDE?:8088L8086UV20#ᙢᙬA19WA0,Xᙬ1MBḄY,ᐸ[,ᨬ]640KBḄRAM:%A^DE?ᡈ`a?஺᡽G?IA-32ᜐᳮᘤᙠ1MBfgḄ?hi^RAM:jᵨ%A^᡽G?஺᡽ᐙ?ᜐᳮᘤklmnopqᑭᵨ“tuᣚᢈx”z3ᜐᳮᘤpq஺JK?:UMAᙠDE?ᐸg384KBA0000H-FFFFFH?A^JK?:UMAoJK?ᙽUMBJK?:UMA$ᨵ%ᵨᑖ%{|^JK?ᙽUMB஺}O?:HMAᙠz~=ᑴA20{lmpqḄ1MBfgḄ64KB:j஺PQ?PCglmROM-BIOS᧜ᑮRAM[,ᑖᵨiROM-BIOSஹ%i^ḄRAM:j஺78⚪6.13{gD◤⌕?ᘤᔲD஺᝞lmᐜᔣᡠᨵᓫᐗᑏᐭᦪ¢55H7ᡈ00Hஹᯠg2£ᔲ¤55H7ᡈ00HIoḼ¦ᔣᡠᨵᓫᐗᑏᐭᦪ¢AAH7ᡈFFHஹᯠg2£ᔲ¤AAH7ᡈFFH஺ᑭᵨ)#§ᑴᔜK¨©Ḅ“ª᪵”ᦪ¢Ḅ©5ᑏᐭஹ2L¬(®¯°;2ᨵᦑ²Ḅᓫᐗ஺ᑭᵨ³´Ḅᨵᦑ²ᓫᐗᡠᙠḄᱥᳮᙢᙬ᝞¶®¯ᑖ᪆2¸ᓫᐗᡠᙠḄᘤ¹ᱏ(lmz3¹ᱏ»Ḅ¼½஺¾ᑭᵨ¿+ÀÁ+ᑏ"#DE?ᨬ}64KB7ÂÃᙢᙬÄ9000H:0000Hᑮ9000H:FFFFHḄ᝞¶Å3┯ÇÈÉÊᐸÂÃᙢᙬ஺7RS;ÌṹÍmovax,9000hmovds,axmovah,55hIᐜᵨ55Hpushaxagain:movbx,0moval,ahagain1:mov[bx],alIᑏᐭdecbxjnzagainlagain2:moval,[bx]I2cmpal,ahIjznext2dispcrlfpushaxmovax,dscal1disphwIÉÊÍᙢᙬmoval,*:'cal1dispcmovax,bxcal1disphwIÉÊïðᙢᙬ

52popaxnext2:decbxjnzagain2popaxcmpah,Oaah;gᵨOAAHjzdonemovah,Oaahjmpagaindone:78⚪6.14óôLRUõᣚö÷?80486ᱏᑁCache[,᝞¶3#õᣚö÷KB2B|B0=010,ᑣõᣚû#Cacheü2ýḄᑨÿ஺LRUᨬᵨஹᓽ⌱ᨬᵨḄᦪᙽᣚḄ஺B0=0,!"ᨬ#$%L2/L3'ᡠ)*+ᣚLoᡈLi஺B|=l,!"ᨬ#$%L'ᡠ)*+ᣚL1஺-.LRU⌱ᨬ#$ḄCacheᣚ஺/⚪6.15123456ᘤCacheḄᑏᐭ:ᶍ<=>$⚪Ḅ?ᨵABCᑏᐭ:ᶍ'ᔜEḄᑏᐭ:ᶍF᪵Ḅ?ᑏᐭ:ᶍᵨHᙠᑏJKCacheLM5ᑁOPᢝR஺SᑏTᑏᐭ:ᶍᢣᜐᳮᘤXCacheᑏᐭḄY'Zᦪ[ᑏᐭᑮM5']᪵ᩭP_M5`CacheᑁOaR஺bcᓫe☠஺gᑏCachehᨵᙠᣚiejᑏᐭM5'ᑏᐭM5Ḅkᦪ'lHᜐᳮᘤm▭᡻Ḅᑏᐭpqᦪ஺gᑏCacheḄឋj⌕1HSᑏCache,tmuv᪀ᶍ.xᩖ஺/⚪6.1680486ᱏ{8KBCacheḄ᪗}56ᘤ.=>h◤⌕21?80486ᱏ{Cacheᐳᨵ8KBO'ᵨ4ᔠᙢᙬ᧜T஺XH4GBOḄM5ᩭ!')Cache.ᓫ'e)ᑖᡂ4GB4-2KB=232-?2H=221Cache஺]᪵Cacheh⌕a21Ḅ᪗}56ᘤ'+Cache᧜ᑮAM5ḄCache஺vᔠS᧜Ḅe)"+CacheX*AM5ᙽ஺/⚪6.171235ḄᑏᐭpqᨵḄᦻ'bᑖ⊤¢=>£¤?1WriteThrough2WriteBack3WriteAround4FetchonWrite1WriteThrough¥ᑏJKḄSᑏ:ᶍ஺2WriteBack¥ᑏJKḄgᑏ:ᶍ஺3WriteAround¥ᑏJKḄ¦ᑏᑖ§'ᓽ¨ᑏ஺4FetchonWrite¥ᑏJKḄᑏᑖ§'ᓽᑏ©஺

53/⚪6.18ª᝞¬1235KḄᭆ®¥1M5ᦪᙽBlock21235Line31235Set41235Way1M5ᦪᙽBlock¥1235LM5Ḅᦪ¯〈)ᦪᙽBlock.ᓫ'±᝞B²஺M5ᦪᙽBlockM5K³´ḄB²ᦪ஺21235Line¥ᢣ1235Kᒹ£B²Ḅaᓫᐗ஺31235Set¥ᔠ·ᐵ᧜Z¹Cacheq.aSet஺41235Way¥ᔠ·ᐵ᧜ZᡠᨵKYºCache».aWay஺/⚪6.19=>¼⌱ᘤஹ½¾¿ஹ½¾¿⊤`½¾¿⊤À5ᘤ?¼⌱ᘤ¥PÁT¬Ḅ16¼À5ᘤ¼⌱ᘤ஺½¾¿¥PÁTÂᐭḄᦪv᪀'ᨵ8²⁚64'ᐹᨵ¼Åᙢᙬஹ#$ᩗ▲ஹ¼È▲ɲ¼஺IA-32ᜐᳮᘤᑭᵨbᩭmu56ËᳮஹᱯᩗLPÁ஺½¾¿⊤¥½¾¿⊤5ͽ¾¿ḄaᱯΪϼ஺½¾¿⊤À5ᘤ¥ᢣ"½¾¿⊤ᡠᙠM5ᙢᙬḄÀ5ᘤ஺/⚪6.20IA-32ᜐᳮᘤᙠPÁT¬'¼À5ᘤ=>ᑁO?ÐDS=78H,!"ᙠPÁTᐸᐹÒḄ£¤஺¼À5ᘤ¼⌱ᘤ'ᒹ£3Ï'ᢣᔣa¼½¾¿஺DS=78H,!"ÔÕᦪ¼½¾¿ᐰ×½¾¿⊤KḄØ0FH½¾¿஺Ùk#$ᦪḄᱯᩗÚ.0,ᨬ1஺/⚪6.22ᵨ4KBᑖ⚓'!"IA-32ᜐᳮᘤZÜឋᙢᙬÝᣚ.ᱥᳮᙢᙬḄ஺ß2Úà⊤ᩭmuÜឋᙢᙬÝᣚ.ᱥᳮᙢᙬ஺1ᙠCR3Kᒹ£ḼÔÕâãḄ⚓äḄåæᙢᙬ'Zᐸç{Üឋᙢᙬᨬ110A31-A22èḄ⚓ä⚗Ḅêë'ì#$ᑮᢣèḄ⚓ä⚗஺2ᙠí⚓ä⚗Kᒹ£ḼᢣᔣḄ⚓⊤Ḅåæᙢᙬ'Zᐸç{ÜឋᙢᙬKḄ10A21îA12èḄ⚓⊤⚗Ḅêë'ì#$ᑮᢣèḄ⚓⊤⚗஺3ᙠí⚓⊤⚗Kᒹ£Ḽ⌕#$Ḅ⚓☢Ḅåæᙢᙬ'Zᐸç{Üឋᙢᙬᨬð12AI1-A0Ḅêë'ñ]a⚓K#$ᑮᡠòᙬḄᱥᳮᓫᐗ஺7?ᐭ?A/⚪7.1c⚪1᜜.=>¦jô56ᘤõᱏö᪵SLM÷·³?2÷BøjùúஹᜓÉü.=>aýþ◤⌕ᦪ34?3=>ÿᵯḄᡈᑴ

54(4)PCCMOSRAMᔩ(5)Ḅᐭ!◤⌕$᝱&'ᘤ(6))*┝ᘤ,-)*┝ᘤ.!/0(7)!᪵Ḅ᜜3456ᵨ8ᩩ:ᦪ<=〈?@(8)!.ABCD┯F(9)GHᵨCALLᢣ,INTNᢣᨵ!/0(10)!K᜜LMN.OPQRSḄM(TU)জ᜜L3ᜓYᙠ[\]ᳮஹ`a?@ஹbcd@ஹ5e[\fgh?☢jkl0mᜧ,ᜐᳮᘤḄ[\?@qᜧrst஺ᡠ5Y᜜3wxyzᘤ{ᱏ}᪵~ᜐᳮᘤrYᵯ஺ঝᦪ<&'ᵨᓛfḄᜐᳮᘤr᠒fḄ᜜3ᡈxL:fgwᓛḄᦪ<ᣚ஺ঞᜐᳮᘤᔣ{ᱏrᑏᐭᱯḄᦪ.ᦪᙳ@ᵨ"#ᘤAᙬBC60ᩭEᜐᳮᘤஹ60ᩭE᜜஺(6)ᔣH0I/Oᑏᐭ60ᦪ%6KLMNOI/OPQR0ᦪ%஺(7)STUVBCḄ60W⌕YZ◤⌕ᜐᳮᘤ\]ᜧ_`aUVஹbcd'஺(8)ef〈BChᵫjklmᦪ%f〈◤⌕ᜐᳮᘤ᡻oINᡈOUTᢣ<஺(9)IA-32ᜐᳮᘤ&qBCᵨerst⊤vwxlBCḄeᔣ_⊤஺(10)H0᜜eeyᑴᘤ1R{|ᔣᜐᳮᘤ}~Le⌕ᜐᳮᘤe6K஺

55()জঝঞট┯ঠ┯ড┯ঢণ┯&থ┯(⚪7.3)⚪(1)ᜐᳮḄ__________,____________________C஺(2)ᙠIntel80x86¡ᑡᜐᳮᘤe1/01_1£ᙬ@ᵨ¤ᙬBC,¥¦d⌕§ᵨ¨©Ḅ—______J«<ᨵ=AᙬBCᐸᐹ¯C°_____O77"ᢣ.ᦪAᙬBC¼>.ᦪAᙬBC஺(5)ᢣ<“OUTDX,EAX”Ḅ»Ḅ>.ᦪAᙬBC¼>.ᦪ___AᙬBC஺(6)bMAḄ½¾W⌕ᵨ¿ÀÁ᜜W#'Ḅᦪ%f〈஺ÂoDMAf〈Ḅ6ÃS°᜜ᐜᔣDMAyᑴᘤ}~_______,DMAyᑴᘤ____ᨵᦔᔣᜐᳮᘤ}~·¸ÆÇᜐᳮᘤQM______Èᨵᦔ⊤É஺ÊdᜐᳮↈḄÌ᝱¸²³~᝱ᓽ²ÎÏ(ᵫ___Âoyᑴ,Ðᡂ᜜W#'Ḅᦪ%f〈஺(7)ᙠIA-32ᜐᳮᘤe0eÒÓÔ_e᜜ÕÖe____e஺(8)IA-32ᜐᳮᘤᙠe᝱ᐸ᪗ØIF=஺ᢣ<___eᢣ<ᐵeᢣ<_________ᐵedIF=__________(9)lᙢᙬBChW#ᨬ᎛___Ḅ#5'ᵨ¿eᔣ_⊤஺ᔣ_8Ḅeᔣ_&#ᙠᱥᳮᙢᙬ__ÝḄ_60Þß⁚';᝞ãᐸᑁåNæᙢᙬÝçè00Hஹ23Hஹ10HஹF0H,ᑣᐸeêᘤSTḄ✌ᙢᙬ__஺(10)Hdìeyᑴᘤ8259AḄIRRᑁå08H,íîᐸ__—{ᨵeÆÇ஺Hdìeyᑴᘤ8259AḄISRᑁå08H,íîeïᙠÒêð஺答জᦪß_ஹᐵ_ஹᾭ-_ঝI/Oòó³ᐭ³~(I/O)ᢣ<AᙬDX"#ᘤ'AᙬঞI/O(᜜)ᜐᳮᘤ(W)I/OPটঠ"#ᘤI/OᙢᙬḄAᙬডI/OᙢᙬḄ'Aᙬ"#ᘤঢ#5ᘤ#ôDMAÆÇ·¸ÆÇ·¸ÀõDMAC(DMAyᑴᘤ)ণ◀÷┯2ত1,STLCLL0থ1KB,20H,4,F010H:2300HIR3,IR3ÆÇḄ(⚪7.4)6ÃḄI/Oᵯø᣸ᨵúÌû"#ᘤüÎÏᔜEḄ.ᵨþÿ()জᦪᘤ

56ᜐᳮᘤ᜜ᣚḄᦪ஺ঝ᝱ᘤ᜜Ḅ᝱஺ᜐᳮᘤ!"#ᘤ$%᜜᝱&'(ᦪᣚ஺ঞ*ᑴᘤᜐᳮᘤ*ᑴ,-ᵯ/0᜜1Ḅᨵᐵ஺ᜐᳮᘤᔣ*ᑴᘤᑏᐭ*ᑴ,⌱9,-ᵯ/Ḅ:;<=0᜜ᣚᦪ>=஺?@⚪7.5BCDI/OEFGᙬ0I•Gᙬ&ᔜᨵBCᱯM?NEFGᙬDOI/OP-ᓫEG᣸ᙢᙬ&EFTUᘤᙢᙬ஺IVGᙬDOI/OP-UᘤᙢᙬIG᣸&ᐳXYᙢᙬZ஺P-EFGᙬ<=&ᜐᳮᘤ◀⌕ᐹᨵUᘤ^_Ḅᢣa0bc᜜&d◤⌕fI/O^_ḄI/Oᢣa0I/OgIc&ᐸiMDj:ᓰᵨUᘤZmI/OᢣanopqI/O1-stᯠjvwḄI/OᙢᙬZnᙢᙬxṹzᓫ஺{I/Oᢣa|}zᓫ&~ᙬ<=ᨵUᘤᢣa஺IVGᙬ<=&ᜐᳮᘤ:ᑖI/O-^_0Uᘤ^_஺ᐸiMDjᜐᳮᘤ:ᵨfI/Oᢣa0bc&ḄUᘤ^_<;᪵}ᵨTI/O^_஺MDjI/OP-ᓰᵨUᘤḄᑖᙢᙬZ&!"ᢣa:᧕I/O1஺?@⚪7.6z᜜'(ᦪᣚḄᵨ<=஺?N᜜'(ᦪᣚḄᵨ<=jজᩩ〈<=&ᵨTzᓫᜓ&ᜐᳮᘤDᜐT¡᝱&¢£'(ᦪ〈஺ঝop¤¥<=jᜐᳮᘤ✌ᐜ¤¥᜜᝱&ᙠ᜜¡£'(ᦪ〈஺ঞq©<=j᜜ᙠªᜓ¡Ḅᩩ«!"¬bc®&¯ᔣᜐᳮᘤ°±ᣚᦪḄ¬஺ᜐᳮᘤᐸ²³´µ¶·&ᑣ᡻(q©º·op»ᡂV½ᦪ〈஺টDMA〈jDMA*ᑴᘤ¿,ÀÁ&ÁḄ*ᜓ&!"ÂIÁᩭ*ᑴUᘤ0᜜Ä,'(ᦪᣚ஺Å<=〉ᵨT◤⌕ᜧÈᦪÉÊ〈ḄËᔠ஺ெ@⚪7.7ÎÏÐ7-5,GoÑÒÓ«|}jK0ÔᓫEᢥ«£&ÖᐝØ᩽ÀL0ÚL7OÛ½MÜLO,LI,L2,……L7,ÝYÞᢝ200msmK1ÔᓫEᢥ«£&ÖᐝØ᩽ÀL0ÚL7OàᔣÛ½MÜL7,L6,L5,……L0,ÝYáÞᢝ200msmᙠᐸ²âã«ᔜÖᐝØ᩽Àᙳ:MÜ஺Ꮇæᨵç£200msḄèopDELAY¿Ä,éᵨ஺?Nagain:movdx,8000hinal,dxcmpal,Ofeh;D7-D0=11111110B?jznextlᓫᢥ,KO,!ᑮnexllcmpal,Ofdh;D7-DO=111U1O1B?jznext2;ᓫᢥ.KI,!ᑮnext2jmpagainᐸ()*+,-nextl:movex,8

57moval,1.KO/0next11:outdx,al;45LEDᵯ-cal1delay;;<200msshlal,1;rolal,11oopnextl1jmpagainnext2:movex,8moval,80h.K7/0next21:outdx,al;45LEDᵯ-cal1delay;;<200nlsshral,1;roral,1loopnext21jmpagain@A⚪7.8CᨵE5FᐭHᜓJᐸᦪLMNᙢᙬQFFEOH,R᝱MNᙢᙬQFFE2H஺UR᝱᪗WDO=1

58@yz{_p¦᜜H¨©ª«¬Ḅgஹᔣᜐᳮᘤ²³´〈ᨵᦔ_p«¬஺¶·¦ᙠ¸¹•»ᩩª

59¶;4·᝞$¸¹º¦_ᜓ1»_ᜓ3,?ᑖZ´ᵨµPR0C1\PR0C3Ḅ¶;4஺L[\]stipushaxpushdxmovdx,4000hstatus:inal,dxtestal,OlhjnzserviceOtestal,02hjnzserviceltestal,04hjnzservice2testal,08hjnzservice3serviceO:callprocOjmpdoneservicel:callprocljmpdoneservice2:callproc2jmpdoneservice3:callproc3jmpdonedone:popdxpopaxiretLM⚪7.14¼½DMA¾¿DMAᑏÀ¼½DMAÁᑴᘤ8237AḄᓫÄ⁚〈ஹᦪ.ᙽ〈¿"#〈ÀL[\]DMA¾VÇᘤḄᦪ.ᙠDMAÁᑴᘤÁᑴR¾!〈È᜜_஺DMAᑏV᜜_Ḅᦪ.ᙠDMAÁᑴᘤÁᑴRᑏᐭÇᘤ஺ᓫÄ⁚〈ÉeV%¹DMA〈Ê〈(Ä⁚஺〈(Ä⁚9DMAÁᑴᘤËÌop}ÁᑴᩗÍÈᜐᳮᘤ஺ᦪ.ᙽ〈VDMA〈ÎÏ9ÐÑᙢ〈ᦪ.ÒᑮÓ6ḄÄ⁚ᦪ〈Ô஺"#〈VDMA〈ᵫ"#bcÁᑴ஺᝞Ö"#bc(ÒᨵᦔÐÑ〈ᦪ.·×"#bcØᦔDMA〈ᨚt஺LM⚪7.15IA-32ᜐᳮᘤÚᜐHÛ᝱ஹÚᜐᐵÛ᝱ÀL[\]ᙠIA-32ᜐᳮᘤÝIF=1,ᑣᜐᳮᘤᜐHÛ᝱஺ÝIF=0,ᑣᜐᳮᘤᜐᐵÛ᝱஺IF=0ᐵḄßàᨵVá9âÚ(

60Lᒹå᜜æ¿ᑁæ]789᡻zᐵᢣ|CLI9஺LM⚪7.16èéIA-32ᜐᳮᘤḄ:;஺L[\]IA-32ᜐᳮᘤêëᔣìcYZ!9ᡈíîḼḄ:;᝞RV1}᪗ñòᘤEFLAGSóᐭᚮ᪘ôõᔜ᪗ñ·}ᢣ|Ḅ÷øᙢᙬLùṹ®òᘤ¿ᢣ|ᢣ┐òᘤᑁü]óᐭᚮ᪘ôõ~஺L2᝞Öᨵ┯þùṹ}ᐸᐭᚮ᪘ᨵ┯ṹᐹᙢ⊤Ḅ஺ᙢᙬḄ!┯ṹ஺3᪷#ᔣ%&'()*+,-.)*ᡈḄᜐᳮ-.Ḅ2⌱4ᘤ6ᢣ8ᢣ┐,ᑖ<=〈?ṹ2@AᘤCS6ᢣ8ᢣ┐@AᘤEIP஺4BC)*⌕EF)*ᐕH᪗JIFK0,ᓽἭNOPQḄRST)*஺5UᑴWXY)*+,-.ᐭZᙢᙬ✌ᙢᙬ\]᡻_)*ᡈᜐᳮ-.஺)*+,-.ᨬab)*!ᢣ8IRETo)*!ᢣ8IRETc*dᙢᙬ6᪗J@Aᘤe᪘ឮg᝞iᐭj┯ṹk◤⌕mno%ᚮ᪘ᢣ┐CbUᑴp!ᑮ*dᢣ8rs᡻_஺t⚪7.17IA-32ᜐᳮᘤḄ)*ᔣ%⊤6)*vwx⊤Ḅyᵨb{|}~IA-32ᜐᳮᘤḄ)*ᔣ%⊤6)*vwx⊤Ḅyᵨb')*+,-.ḄᐭZᙢᙬK)*ᔣ%OUᑴWXᑮ)*+,-.)஺t⚪7.18᝞-.2Ḅclimovax,0moves,axmovdi,80h*4movax,offsetintproc;intprocbP-cldmoves:[di],axmovax,segintprocmoves:[di+2],axsti~EF80H&)*ᔣ%஺t⚪7.19)*Uᑴᘤ8259A)IRR,IMR6ISR@AᘤḄyᵨb{|}~)*@AᘤIRRA8ᩩ᜜)*&IR0IR7Ḅ᝱஺DiK1⊤IRiᨵ)*K0⊤஺)*ST@AᘤIMRAB)*&IRḄST᝱஺DiK1⊤IRi)*STἭNK0⊤ᐕH)*஺)*+,@AᘤISRAᙠ8259A+,ḼḄ)*᝱஺DiK1⊤IRi)*

61ᙠ+,)K0⊤£ᨵ+,஺ெt⚪7.20☢bIBMPC/XT¦ROM-BIOS)Ḅ08&)*+,-.ᔜᢣ8Ḅyᵨ஺int08hprocstipushdspushaxpushdx……¹º»¼º……Uᑴ½¾¿Àintlchmoval,20hout20h,alpopaxpopdxpopdsiretint08hendp1~int08hprocfar;È-sti;\)*pushds;ÉÊËpushaxpushdx……¹º»¼º……Uᑴ½¾¿ÀintIch;Íᵨ1CH&)*moval,20h;Ð〈E0I)*ÒÓÔ8out20h,alpopax;ឮgÊËpopdxpopdsiret;)*!int08hendpt⚪7.21ÕᑏP-.c×⚪7-5ḄINT80HᑁÙ)*+,-.ÚᶇᑁA஺ᯠaᙠÍÝ-.)ᡈᐸß-.)᡻_INT80H,àᔲÊᐸâ஺~;ṹ2jmpstart;80HᑁÙ)*+,-.âäxåæ0ÒçDSDX=ìíî✌ᙢᙬnew80hproc;-ðñsti;\)*pushax;É@Aᘤpushbxpushsimovsi,offsetintmsgnewl:moval,cs:[si];'÷âäx

62cmpal,0•“0”ÒÓjznew2movbx,0;ûᵨROM-BIOSᵨmovah,OehintlOhincsi;jmpnewlnew2:popsi;ឮ"#$ᘤpopbxpopaxiret;)*+,intmsgbyte'AInstructionInterrupt!',Odh,Oah,0;567089:new80hendp;)*;<=>8?;@=>start:movax,csmovds,ax;AB04H)*ᔣFmovdx,offsetnew80hclimovax,2580hint21hstimoveax,offsettsrmsg;JKLMcal1dispmsgmovdx,offsetstart;NOPᶇᑁ$=>ḄTUadddx,15shrdx,4;᦮W7“⁚”616⁚:Wᓫ]movax,3100h;=>Pᶇ_+,DOSint21htsrmsgbyte'INT80HProgramInstalled!*,Odh,Oah,06e⚪7.22gᡂi⚪7-2jklmn᪵Ḅpq_rstlmᦪvwxᣚᡂASCHṹ_{$ᙠ}~ஹᑭᵨDISPMSG=>஺6:;ex0722.asminDOSincludeiol6.inc.datadatebyte*Todayis20xx-yy-zz_,0.codestart:movebx,11moval,9;AL=96ᜓ9ᓫᐗsᦪv:out70h,al;70HḄI/Oᙢᙬ_⌱CMOSRAMḄ9ᓫᐗinal,71h;71HḄI/Oᙢᙬᐭ_s9ᓫᐗḄᑁ¡_{$ᙠALmovdl,alshral,4;xᣚ¢]BCDṹWASCIIṹaddal,30hmovdate[ebx],al;{$ᑮ}~addebx,1anddl,Ofh;xᣚ¦]BCDṹWASCIIṹ

63adddl,30hmovdate[ebx],dl;{$ᑮ}~addebx,2moval,8;AL=8(8ᓫᐗsᨴ©ᦪv)out70h,alinal,71hmovdl,alshral,4«xᣚ¢]BCDṹWASCHṹaddal,30hmovdate[ebx],al«{$ᑮ}~addebx,1anddl,Ofh;xᣚ¦]BCDṹWASCHṹadddl,30hmovdate[ebx],dl;{$ᑮ}~addebx,2moval,7;AL=7(7ᓫᐗslmᦪv)out70h,alinal,71hmovdl,alshral,4;xᣚ¢]BCDṹWASCIIṹaddal,30hmovdate[ebx],al;{$ᑮ}~addebx,1anddl,Ofh;xᣚ¦]BCDṹWASCIIṹadddl,30hmovdate[ebx],dl;{$ᑮ}~moveax,offsetdate;cal1dispmsgexit0endstart8Bᵨᢈ(e⚪8.1)¬⚪(1)W®¯8253/8254Ḅ°±²³1W´µ=ᓫ¶ᾭ~°±²³¸(2)W®ᑏᐭ8253/8254ḄNᦪº»W0ᓾ⊤ᨬᜧḄNᦪ»¸(3)ᜐᳮᘤÂÃ8255ḄÄᑴÆÇ´7ᑏᐭ²³ÄᑴÈ]Äᑴ_8255᝞ÊËÌÍÄᑴᕖ¸(4)“8255ᐹᨵ┝$ᦪvḄqÒ”Ó®ÔÕ¸(5)Modem(Ö¯“×”)Ó®±ᵨḄᘤظ(6)RS-232c᪗Úᵨ25┐ÜÝᘤ_W®PCÞßàáḄÓ9┐ÜÝᘤ¸(7)®ÓRS-232CḄâᑴᘤÜݲ³¸(8)UARTᘤØḄ@⌕pqÓ®¸(9)åæçᐵᙠéêᐭëì)í®±ᵨ¸(10)ᜐᳮᘤW®◤⌕ÂÃ┝$ᘤïᦪ/éêxᣚᘤÜݸ

646:জ²³1´7Âõ=ñòóôõUḄᓫ¶ᾭ~_ᦑ¯°±²³1W´µ=ᓫ¶ᾭ~°±²³஺ঝøWNᦪᘤÓᐜú1,ûᑨ*ÓᔲW0,ᡠ7ᑏᐭ0ÿ▭⊤ᨬᜧᦪ஺ঞᑴḄD7ᩭD7=l,ᑴᑴᔲᑣᑴ஺ট8255Ḅ%&'(ᙳ*+,-.ᦪ/┝12ᓽᦪ/-.4561ᙠ8255ᑁ92*:;<.ᩭ2=ᨵ?8255@-.ABCᦪ/DEᦋG஺ঠModem,NOᑴPOᘤ,RᦪSTUᣚ〉ᔠᙠᵯZ[\]^〈Ḅ`aSTbOᑴc:dRᵯZ[\Ḅ`aSTUᣚᦪSTbPOc஺ডfgᜧhᦪiᜓ=kᵨRS-232C᪗sḄᐸu9wST2ᡠ:PCz]{|}9┐ᘤ஺ঢzS2*:kᵨOᑴPOᘤ2ᑭᵨ232c25NOᑴPOᘤbNullModemc஺ণUART⊤ᵨᦈ〈ᘤ2⌕R¡ᦪ/Uᣚ¢ᦪ/〈2:d+,¢ᦪ/Uᣚ¡^〈£ᜐᳮᘤ஺ত§ᵨh\¨ᐵ2ªzᑴ2«hw,¬STᑖDᙢᑮA/DUᣚᘤ]Uᣚ2±ᑮᐳᵨA/DUᣚᘤ:⁚ḕµ¶Ḅ·Ḅ஺থᜐᳮᘤ-.ᦪ/¹=ᙠ-.ᢣ»OUT᡻Ḅ᩽D¿ᑁ.,ᙠᦪ/À[ᓃ᠒ÃḄ᜜idDÅ<2ᡠ:zÆDACÇ¿ÈÉᦪ/┝1ᘤ஺bÊ⚪8.2cᑨÎ⚪b1cNÐDᘤÑÒ2NᦪᘤÑÒ2ᐸ+ÓÔ¹§ᵨᦪᵯ\+,Ḅ஺b2cᦪ*:Õ0¨×⌲w⌴Ú±ᑮÛÐḄᦪ2Ñ*:ÕÛÐḄᦪ¨×⌲w⌴ÜឮÞᑮ0;àὅâãᦪᘤ24ὅÜãᦪᘤ8253/8254§ᵨ4ὅ஺b3c32PCzu¡åᨵ8253ᡈ8254çᱏ2éᐸᑴçᱏCᐹᨵëìᐸḄᵯ\஺b4cBí+,16¡ᦪ/^-◤⌕16wᦪ/ST[஺32ᦪ/Ḅ¢〈=ᵨBwᦪ/ST[{*:஺b5c8255åᨵDðST2ᐸ'(1Ḅᦪ/^-§ᵨDñ஺b6cOᑴPOᘤḄSTOᑴᦪSTÆ`aSTḄUᣚ2ᡠ:ᐸUᣚòᳮÆADCᡈDACᘤ¶B᪵஺b7c`aᙢ[ôᦪᙢ[¹ᙢ[2ᡠ:Bõ*:ö÷ᙠBø஺b8cᵯᾯúûüýþ2◤⌕ADCᘤ¶Rþÿᣚᦪ⚣஺9ᣚᦪᐭᣚᡠᨵᜫ஺10ᜐᳮᘤ#$ᦪ%DACᘤ)*+,-.Ḅ0ADCᘤ)◤⌕34ᣚ◞67%89:;ᦪ<=஺>?জAঝAঞAটAঠAড┯ঢ┯ণAতAথAL⚪8.3QR⚪18253VᱏXᨵY_________[\ᦪᘤ]⍝_Y\ᦪᘤᨵ`abcde$⌱g஺hij]⍝cd0%ᐸ+,lOUTᵯqr%]⍝st\ᦪu_ᩭYᾭxyz1;ᑣ+,l+,__________ᵯq⊤~\ᦪ<஺2Ꮇij8253ḄCLK01.5MHzḄ6OUTO⚣᳛300kHzḄc

65ᑣ8253Ḅ\ᦪ..⌱ᵨḄabcd஺(3)8255ᐹᨵY᜜iᦪlᑖᡂ3Yulᑖ,ᑭ.(4)8255ḄABu¡cd1+ᐭuCX¢£ᑖ¡+,ᑣcd¤ᑴ,ᐸ¦D஺[§¨©ᨵbᵨஹe஺ᡈ1஺(5)A8255Ḅ¤ᑴ¬ᘤᑏᐭA0H,ᑣᐸuCḄPC7l±ᵨb²஺(6)PC´µ¶XESCµ¹AµḄº»ṹᑖ,½sº»ṹᑖo(7)232Cᵨ¿À〈ÂÃᦪḄl,ᦈÂÃᦪḄl,ᙢÆᵨÇÈ⊤~஺(8)]É8Yᦪ[ஹᏔ᪥Ìஹ2YÍÎ[ᑣ.ᔣ8250¬ᘤᑏᐭ¤ᑴ,ᐸᙠPCÑᑡ´XḄI/Oᙢᙬ(COM2)஺(9)ᨵÉᦪ32Ḅ8[⊡ṹ00100000,᝞=ᵨ8[ØÙṹrᨵÉᦪ32Ḅ8[⊡ṹ11100000,᝞=ᵨ8[ØÙṹo(10)᝞=ADC0809ÚÛÜᵯÝÞ10V,àÛÜᵯÝᙢ+ᐭᵯÝ2V,ᑣᳮáXḄ+,ᦪ஺(>?)জ3,16,6,âᑏᐭ\ᦪã(äåᐭz1\ᦪᘤ)ᾭx+ᐭCLK,zæ\ᦪᘤ\ঝᦪᘤḄ\ᦪz0,ç5(=1.5MHz+300KHz),3ঞ24,PA0-PA7,PB0-PB7,PC0-PC7টঠ10110110(=B6H,B7H)ডOBFঢ01H,1DH(=30),81H,9DH(=158)ণTxD,RxD,GNDত]²ï¤ᑴ(CLR),0001111IB(1FH),2FBHথ10100000,0110000053H(=51ñ51.2=2+10¡256)(L⚪8.4)8253Vᱏ_Y\ᦪ]⍝ò᜜iᨵóô²_YḄᵨ⌶ö÷ø(>?)CLK6+ᐭùᙠ\ᦪúû¦ülX_+ᐭY6(ýþÿ)ᦪᘤḄᦪ1஺GATEᐭᑴᦪᘤᑖᡂᵯᑴᓣᑴ!"#$஺OUTᦪᘤ'()*ᦪ+,-.(ᦪ00),OUT45678)9'஺(:⚪8.5)8253Aᱏ◤⌕E9I/OᙢᙬᔜᵨLM"NḄO(PQ)49Sᑏᦪᘤ0,12,UᑴV஺

66W:⚪8.6Xᢥ᝞[⌕\ᑖ]^ᑏ8253Ḅ_`ᓄ,bcd8253Ḅᦪᘤ0e2ᑴVI/Oᙢᙬf*0204He207H஺জhᦪᘤ1ᙠjk0,lᵨ8mnoᑴᦪᦪ_0128oঝhᦪᘤ0ᙠjk1,ᢥBCDṹᦪᦪ03000஺ঞhᦪᘤ2ᙠjk2,ᦪ002F0H஺WPQsজmoval,50hmovdx,207houtdx,almoval,128;=80hmovdx,205houtdx,alঝmoval,33hmovdx,207houtdx,almovax,3000h;uv3000movdx,204houtdx,almoval,ahoutdx,alঞmoval,0b4hmovdx,207houtdx,almoval,02f0hmovdx,206houtdx,almoval,ahoutdx,alW:⚪8.7ᑭᵨxyᘤᑴzᳮ^ᑏ)9|᧕~ᘤ,b஺(ᢥ[1e8ᦪVᑖ]'Ḅ1e7iW⚣᳛f*0524Hz,588Hz,660Hz,698Hz,784Hz,880Hz,988Hz1048Hz(ᢥ[ᐸᨚ(ᢥESCWASCIIṹ01BH,,b஺WPQs;ᦪtableword2277,2138,1808,1709,1522,1356,1208,1139;177iḄᘤᦪ;ṹmoval,0b6h;ᘤ2jkout43h,alagain:callreadc;ᢥcmpal,'I,;ᑨvᔲ0ᦪV1—8

67jbnextcmpal,’8'janextsubal,30h;1e8ḄASCIIṹ¡ᣚ0noᑴᦪsubal,1;£1,6ᦪV1e8¤00e7,¥¦§⊤xorah,ahshlax,1;©¥2movbx,ax;ᦪ⊤v16mᦪmovax,table[bx];ª'Ḅ«ᦪout42h,alᘤ2Ḅᦪmoval,ahout42h,alinal,61hᡭxyᘤyoral,03h;hD1DO=PB1PBO=11B,ᐸmu¤out61h,aljmpagain;y®ᑮᢥ[°)9next:pushaxinal,61h;uvᦪV1e8,ᑣᐵ³xyᘤyandal,Ofch;hDlDO=PBlPBO=OOb,ᐸmu¤out61h,alpopaxcmpal,Ibh;ᑨvᔲ0ESCWASCIIṹIbhjneagain;uvESC,´ᔲᑣ,b᡻¶-.W:⚪8.8┐8255Aᱏjk1'b¸¹ᦪ'Ḅ+,஺WPQsজjk[ᜐᳮᘤ»᡻¶'OUTᢣ½'ᦪ¾8255,'᪗஺§Àjk[Á+ÂÃCḄÄ᝱Æ¥'ᦪᜐᳮᘤ᡻¶'ᢣ½ঝWW)j☢È◀INTR,°)j☢ᙠᓣhÊᨵᦔÁd᜜Îᦈᦪ஺ÐÑᵫv᜜Ḅ⌱ÁঞÔ■-.Öᦪ×ÂÃᦪØ'஺(᜜ÎᦈᦪÖ'Ù»;টᩗhÜÝᦔᓣÞhINTRᨵᦔWᐕàḄáâs'ãḄä\஺W:⚪8.98255AᱏḄÂÃA0jk1ᐭÂÃB0jk1'ᑣSªÃCḄᦪḄᔜmvåæçèOWPQsPC0ÂÃBḄä\PC1ÂÃB'éêᘤëPC2ÂÃBᐕàᑴmPC3ÂÃAḄä\PC4ÂÃAᐕàᑴmPC5ÂÃAᐭéêᘤëPC6/PC7I/O

68W:⚪8.10ᵨ8255ÂÃAjk0ìᡭᓺîÎÃïð᝞ñᦋᵨÂÃB,ᐸu¤¸¹ó᝞MôᦋÎÃᵯõ,b஺WPQsôᦋᵯõ6ÂÃBḄPB0ePB7ÎᡭᓺîḄᦪmDATA0-DATA7ᓽ஺ôᦋ,b6'ᦪÂÃᦋ0FFFAHᓽ஺W:⚪8.11ᵨ8255ÂÃAjk1ìᡭᓺîÎÃ᝞ñᦋᵨÂÃB,ᐸu¤¸¹᝞MôᦋÎÃᵯõ,b஺WPQsôᦋᵯõPA0-PA7ᦋ0PB0-PB7PC6ᦋᵨPC2,PC7ᦋᵨPCI,PC3ᦋᵨPC0஺ôᦋ,bmovdx,Offfehmoval,84houtdx,almoval,04h;INTEB(PC2)0,Ἥoutdx,almovex,counter$ᡭ&'⁚ᦪ〈exmovbx,offsetbuffer;.'/0✌ᙢᙬcallprints;6ᵨᡭᓺ9:;printsprocpushax;<=>?ᘤpushdxprintl:moval,[bx];.EFᦪGmovdx,Offfahoutdx,al$HIJBKLmovdx,Offfehprint2:inal,dxtestal,02h;OPQPC1S1ᔲUjzprint2incbxloopprintlpopdxpopaxretprintsendpQV⚪8.12ᨵEYZ[ᑴ]^_ᨵ`F[ᑴa_ᑖcᵫ`FefḄKᐭI[ᑴ_iᵨ8255ḄIJCjik]^Ḅ[ᑴ_᝞m⚪no஺qᐵK0sK3ᡭqᑣefuᐝw᩽yL0sL3z_⊤|]^k[ᑴa}~$qᐵᔠᑣefuᐝw᩽yz_k[ᑴaLiᦑ஺ᑏ8255Ḅᓄ:;[ᑴ:;஺QS;ᑏᐭ'

69moval,lOOXOOXlb;=81HX⊤|_ᑏ0,1movdx,[ᑴJᙢᙬ;ᎷOFFFEHoutdx,al$ᐭ•_L0sL3ᐰzmoval,Ofhmovdx,IJCᙢᙬ$ᎷOFFFCHoutdx,al$[ᑴ:;movdx,IJCᙢᙬ$ᎷOFFFCHinal,dx;¢ᐭPCOsPC3movcl,4shlal,cl;£¤4¥outdx,al;[ᑴPC4sPC7n8-1V⚪8.12▬nQV⚪8.13ᑏEF:;_§¨ᙠª«¬ᢥEª®_¯°|ᐸ²³q´µṹ_ᑭᵨESCª⌨L:;᡻~஺ª«Ḅ§F'⁚ºṹ»¼½E¾09H¿_᪵ᜧÂᑖᢥªÃÄÅƾ_ᢥᢥªu〈²³´µṹ_Çqᢥªu〈q´µṹ஺È᝞_ESCªÉ01H81Ho83ª᪗˪«ÌḄÍḄᢥªÎᨵÏF஺ÐÑÒª«Óᦪ'Ôª«ÓḄÆFÕÖḄ´µṹᑖcÉ×ØUQS;ᦪGdonebyte0;ºṹ_Ò:;movax,3509hint21hpushespushbxclipushdsmovdx,segnew09h

70movds,dxmovdx,offsetnew09hmovax,2509hint21hpopdsinal,21hpushaxandal,Ofdhout21h,alstistart1:cmpdone,1jnestart1clipopaxout21h,alpopdxpopdsmovax,2509hint21hsti;ºṹ_ÜÝ:;new09hprocstipushaxpushbxinal,60hpushaxinal,61horal,80hout61h,alandal,7fhout61h,alpopaxcmpal,1jenext3pushaxshral,4cmpal,Oahjbnextladdal,7nextl:addal,30hmovbx,0movah,OehintlOhpopaxandal,Ofhcmpal,Oahjbnext2addal,7next2:addal,30h

71movah,OehintlOhmovax,0e20h;KLÆFáâ_ᑖ◞int10hmovax,0e20hintlOhjmpnext4next3:pushdsmovax,©datamovds,axmovdone,1popdsnext4:moval,20hout20h,alpopbxpopaxiretnew09hendpᑭᵨ¬å:;_æçÒª«ÓḄÕÖªḄ´µṹÉèIC9C஺ᦪ'Ôª«ÓḄÕÖªḄ´µṹÉèEDICED9C»QV⚪8.140~éê³ëu〈8¥wìᑴᦪ01010101èíᵨ½³ëîï_ᵨ᜻᪥ò2Fó¥஺ôLu〈k'/®Ḅõon஺öᵨ1200bps,ᑣ§÷ᨬÏÎu〈ÏùFᦪGUQS§F'/Ḅ¥ᦪÉè1F½¥+8FᦪG¥+1F᜻᪥ò¥+2Fó¥=12¥_íᵨ1200bpsஹᓽ§÷1200¥Ḅþ〈ÿ᳛ᑣᨬ〈1200+12=100ᦪ஺8-2ூ⚪8.15ᑴᘤ!232c"#$%&,()ᵨ+9,-#.ᔜ0Ḅ2345.ᑭᵨ232c789:%;$,&<=ᵨ45$%>?@AB஺CDE(ᵨḄ9,-#Fᐸᔜ0Ḅ2HTxDHI8ᦪ〈J஺RxDHI8ᦪ%ᦈJ஺RTSH〈LM,-ᵨNOᦪ,PᜓRᜓ%ᦈᦪ஺CTSHS◀〈CTS,-ᨵᦔWXRTS,-ᓽᐕ[〈஺RTS\CTS3]^ᵨNᦪ〈Ḅὶ`,-஺DTRHᦪaJRᜓbc,-DSRHᦪdeRᜓf,-gDTR\DSRh<ᵨiᦪaJPᜓᦪ,PᜓjḄὶ`,-஺GNDH,-ᙢlmᡠᨵḄ,-op]qᐳḄsὃᵯv஺

72CDHxyz,-{|ᙢᑴᘤ%ᦈᑮᩭ0^>Ḅx,-&bᔣᦪaJPᜓopᨵᦔ,-஺RIHᢣ{ᑴᘤ%ᦈᑮ^>Ḅ-,-j,-mᵯWḄᢣஹᢝᨵᦔ஺ᑭᵨ232c789:%;$,&;<=ᵨᦟᩞ8-25ᡠ$%>?஺C⚪8.168250ḄIIR3Ḅ5"30஺ᑖ᪆XTROM-BIOSḄᵨ஺᝞¡¢ᩩ¤¥¦ᑣRS232-BASE§ᓫᐗª«¬45ᑁ®.movbx,0movdx,3fahinal,dxtestal,0f8hjnzF18movRS232-BASE,3f8hincbxincbxF18:movdx,2fahinal,dxtestal,0f8hjnzF19movRS232-BASElbx],2f8hincbxincbxF19:.......CDEROM-BIOSḄᵨ3yz3ᔲ«ᙠI8±²,%³ᵯ´஺᝞µ¡¢ᩩ¤¥¦AB«ᙠ±²,%³ᵯ´RS232-BASE§ᓫᐗ«¬±²,%³ᵯ´Ḅ¶ᙢᙬH3F8H\2F8H஺C⚪8.17✌ᐜ=ᵨ0º»¼½>?ᙠ|¾¿À⚪8-3஺ᯠÂÃÄᡈᑴ]ᵨNÆᑴᘤ$%ḄRS-232cᵯÇÈᦋ⚪8-3=ᵨÊ(Ḅ¼½>?¿À9ËḄ,஺᝞µᙠWindowsḄÌÍDOS»᛻ÏÐÑ8ᑣX=ᵨÒDOSÓÔᙠ¿>?Ñ8஺ὅÖ<×ᦋ7⚪8-3Ḅ2᝞{ᢥÙÚÛܪÝÞᐭḄ§àI〈á^>|hâ〈Ḅ,ã஺CDEூ⚪8.18ABᙠÌÍÞᐭÞäåæᘤஹ¬ᜧᘤஹèᘤஹ´éᐵஹ=᪵ᢝᘤḄᵨ஺DAC\ADCìᱏ3452Ḅᘤ¤.CDEåæᘤHªᔜîÀïḄᱥᳮòzòäᩭó¥ᣚᡂᵯ,-஺¬ᜧᘤH¬ᜧᘤöåæᘤÞäḄ,-¬ᜧᑮADCᡠ◤Ḅòù஺úèᘤHèᘤᵨNûúüýஹèþ⚣᡾஺ᐵᑖᙢᑮA/DᣚᘤᣚᑮᐳᵨA/Dᣚᘤ

73⁚ḕ$%Ḅ'Ḅ஺(᪵*ᢝᘤ,-.ᓄḄ0ᵨ(᪵*ᢝᘤ1*2A/Dᣚ345.*2ᣚ67஺D/Aᣚᘤ89:ᜐᳮ=Ḅᦪ?@ᣚᡂB@CᵯEᡈᵯGH஺A/Dᣚᘤ8@CᵯEᡈᵯGHᣚᡂBᦪ?@Iᐭ9:ᜐᳮ஺CK⚪8.19ᎷNO8PADCIᐭᵯERST5VU+5V,VW᝞YIᐭᵯEVinḄᦪ?@ZṹC\]ṹHজ1.5Vঝ2Vঞ3.75Vট-2.5Vঠ-4.75V஺CcdHজA7HঝB4HঞEOHট40Hঠ06HCK⚪8.20ADCḄᣚefghijᵨ1᝞k0ᵨlmnoᣚepqCcdHrA/DᣚefADCIWTᣚefst:noep஺ᨵv0ᵨA/DᣚefḄwxyḄz{|}wx~5஺wefjB᝱᝱ᘤ〈ᑮt:ᦪḄOTP஺t:5᝱Pefᨵᦔmnoᦪ஺wefjBVᑮt:ḄV஺ADCᣚeftᔣᜐᳮᘤᵭ஺ᜐᳮᘤy=ᙠz{noᦪ஺DMA〈w:᝞pADC-7¡¢1efjBDMAV(ᵨDMA〈w஺£〈wx50ᵨef9:£ᑮᣚefnoᦪ஺825538-3⚪8.21▬3CK⚪8.21O¤ᑴ¦ᵯ᝞§⚪¨©஺◤⌕¤ᑴ8255AḄPC7IWT¬ᾭSTART®A/DᣚADCᣚefᙠ¯°±ᾭefEOCḄ〈Wᦪ?@஺ᜐᳮᘤ(²lᦪ³´ᜐᳮµ¶¤ᑴ஺·¸ᙠTᜐᳮ¹z{ADPRCS,ᐸᐭ¦»ᦪSᙠAL¼¸ᘤ¸ᐭ½ᜐᳮḄᦪ?@W¦»ᦪBAL¼¸ᘤ¾Wᜐᳮ=Ḅᦪ?@஺ᎷN8255¿¦A,B,CÀ¤ᑴ¿¦ḄᙢᙬÂÃBFFF8HUFFFBH,⌕V8255Ḅ¿¦ABw1Iᐭஹ¿¦BBw0IW஺Zᑏ(ᵨwnoᦪÆÇÈÉḄz{Ê஺

74CcdH;8255AÐÑᓄmoval,101lOOOxbmovdx,Offfbhoutdx,al;0PC7=0CSTARTB±Hmoval,00001110bmovdx,Offfbhoutdx,al;®A/Dᣚmoval,00001111bmovdx,Offfbhoutdx,al;0PC7=1CSTARTB,Hnopmoval,00001110boutdx,al;0PC7=0CSTARTB±HíSᔲᣚefmovdx,Offfahagain:indx,altestal,20h;PC5=0Cᣚóefôõö÷Hjzagain;PC5=1CᣚefHmovdx,0fff8h;Iᐭᦪinal,dxcalladprcs;ᜐᳮᦪmovdx,0fff9houtdx,al;IWᦪCK⚪8.22H¨8-19cÿ▣ᵨᢥ஺✌ᐜᑴᑡ"#ᐭ஺CPU()*ᑴ+ᐰ-./0ᵯ2ᯠ45ᐭ67ᑡ*"#+஺᝞9:;ᨵ=ᢥ>ᑣ@ABCᑡ“0”஺ᯠ4GᑡḄᵨIᣚᓽᑡᑴ"#ᐭ஺LMNO6PḄᑡQ5ᑡᡠS67ḄᐭQTUVᔠᡠᙠḄQ@A“0”஺Y᪵[=ᢥ>;@A6P\]ḄQGᑡQ஺^_`ᵨᢥ◤⌕ᩩdefGᑡḄᵯg@hiᢝk᝱ᦋnᐭஹp஺q8-19cᵨ8255Aᐸ3|}ᦋn஺~|ᑏ}஺*+9ᜐᳮᘤឋFGHᢈ*⚪9.1+⚪*1+URISC᪀Ḅ☩*2+ᑖi⚜#ᢈᵨU⚪Ḅ*3+ᦪ¢U⌕`ᵨ£¤ᓄ¦p

75*4Uᦪ¢|ṹᨵ©ᐭ⚪ª᦮ᦪ|ṹᓾᨵ*5®¯°ᢣ²U³=´SIMDᢣ²*+1µ¶·¸ឋ^Ḅ`ᵨºᩖḄஹ¼^½ᜧḄᢣ²ᓽºᩖᢣ²¿᪀CISC஺Àᢣ²¿᪀RISC5᪷ÂᡭẚÅYÆÇᵨᓫᢣ²ÉÊËdÌ͸ឋ^஺*2ᑖi⚜#ᢈᵨᢣ²ÎÏᢈÐÑᙠḄᑴÒᐵᓽÔᢣ²ÕÖឋ^×0Ḅ⚪஺3ᦪ¢`ᵨ£¤ᓄ¦p⊤ÙÉᜧஹÉÀÚḄᦪ¢ÛÜÝ|ṹḄ®᪵ឋ஺4ᦪ¢|ṹÞ⊤ÙßàÀáḄᦪ¢ᡠ◤⌕©ᐭ஺â᦮ᦪ|ṹ⊤ÙḄᦪ¢ãÀÚḄᦪ¢஺5®¯°ᢣ²Ḅäᱯᩩᢣ²æ;ᜐᳮ®éᦪ¢ᓽᓫᢣ²®ᦪ¢SIMDo*⚪9.2ᑨë⚪1ᜐᳮᘤឋ^ᵨ}᡻;î᧜஺2(³RISCᜐᳮᘤðᨵ“7ᦪLOAD”G“ÑᦪSTORE”ᢣ²ñÑòᘤ஺3RISCḄᢣ²ᩩᦪóஹᢣ²ᓫஹ¤pôAᡠ|õ}Ûö÷᧕ÌÍLMù◤⌕úᓄ஺*4ᵨᢣ²ÎÏᢈPûᩩᢣ²Ḅ᡻;îᜧᜧüó·¸Åឋ^஺*5x87FPUḄᢣ²ý¶ðᨵþᢣ²ùiᢝºᩖḄÿᦪஹᢣᦪᦪ஺জঝঞ┯ট┯ঠ┯⚪9.3⚪1CISCᦻḄᑏ!"#$஺%RISC&ḄRᩭ(ᦻ!)*஺1A-32ᜐᳮᘤ./0᪀஺2Intel804862᦮ᦪᢣ4Ḅ᡻6ᑖᡂ59▤;!<=ஹஹஹ஺3ᓫ?@ABCDᓄDFG⊤IḄᦪJLMᑮoOPQᨬSᦪT⌕SḄᦪJ!VOPWXOPQᨬᜧᦪT⌕ᜧḄᦪJ!VOPW4ᓫ?@ABᦪJDFᐳᨵ\!ᐸ&^_\ᓰa\!▤ṹcᑖᓰ__________\!eᦪcᑖᨵ__________\஺5/ᨵ^_f⁚ᦪJ78H56H,᝞ijᵨlmn!ᐸ$Xoᵨ⛳n!ᑣᐸ஺জComplexInstructionSetComputer,rᩖᢣ4tuv!Reduced>?wḄ!CISCঝᢣ4⚜yPFஹᢣ4zṹ1D1ஹᢣ4zṹ2D2ஹᢣ4᡻6EX{ᑏWBঞ±2a|!+2-2-23X2127,~!ট32,8,23ঠCEH,7FH

76⚪9.4ᜐᳮᘤឋGF!᡻6Ḅ9☢஺ᜐᳮᘤ᡻6=ICXCPIXTᐸ&IC$Ḅᢣ4ᩩᦪCPI$᡻6ᩩᢣ4ᡠ◤ḄᙳᕜᦪT$9ᕜḄ!V⚣᳛Ḅ᎔ᦪ⚪9.5wᓫᢣ4rᩖᢣ4!0ᔠRISCᜐᳮᘤ!2ᢣ4ᑖ$wᓫrᩖḄ¡¢஺wᓫᢣ4ᢣuv£¤Ḅஹ"ᵨḄᢣ4!¥¥ᐸ¦GQ§wᓫ஺¨rᩖᢣ4ᢣ¦G©ᜧḄᢣ4!ª¥¥«"ᵨ஺uvᜧcᑖᙠ᡻6wᓫᢣ4!rᩖᢣ4Ḅᵨ⚣@®Q§¯஺a9CISC0᪀Ḅᢣ4°±¨²!³ᨵ´20%Ḅᢣ4#µ"ᵨ!ᐸᵨ¶´ᓰ᦮9Ḅ80%X¨·ᢣ4°±&ᜧ´80%Ḅᢣ4ᓾ¹ºᵨ!ᐸᵨ¶»ᓰ᦮9Ḅ20%X¨¼ᵨ⚣@§½Ḅᢣ4"¾¿wᓫᢣ4஺⚪9.6RISCᢈÁᨵ¿☢ḄÃ⌕ᱯ⁐Æᢣ4ᩩᦪ§º஺ÇᙬFwᓫ஺☢ᔣÊËᘤÌÍ஺ᢣ4DFC᦮஺Î/ᵨᐜÐḄÑÒÓᢈÁ஺⚪9.7ᢣ4ÑÒÓÆ80486jᵨÂÔÕÑÒÓ!ᔜÕḄÃ⌕ÌÍᑖ×Æᢣ4ÑÒÓØᩩᢣ4ÙÚ᡻6Ḅa9ᜐᳮᘤÛPᢈÁᙠaᩩᢣ4TÜᨵ᡻60ÝVÞßàáᢣ4஺Intel80486jᵨ5Õᢣ4ÑÒÓজPFâã—ᢣ4⚜yPrefetchᜐᳮᘤåM½æçËèya9Cache6!$o169f⁚!ᙳᒹê5ᩩᢣ4஺ঝD1âã——ᢣ4zṹ1DecodeStage1஺ᢣ4zṹᑖᡂW29âã!D1âãᡠᨵÌÍṹÇᙬFëìÐ6zṹ஺ঞD2âã——ᢣ4zṹ2DecodeStage2஺D2âãí9ÌÍṹ᡽ï$ALUḄðᑴë_!òÐ6§rᩖḄËóᘤᙢᙬu஺টEXâã——ᢣ4᡻6Execute஺EXâãõᡂALUÌÍCacheËy஺ঠWBâã——{ᑏWriteBack஺WBâãö÷ᙠEXâãøᑮḄÊËᘤᦪJù᝱᪗ü஺⚪9.8ÑÒÓᦔ᳛ḄÃ⌕ᢣ4þᐵᨵ☢

77ஹᦪᐵᑴᐵ⚪9.9BF600000Hᓫ!"ᓄ$%"&ᦪ'⊤)Ḅ+ᦪ,-BF600000H=10111111011000000000000000000000BBF600000H=10111111011000000000000000000000B./011,⊤23ᦪ஺ᢣᦪ6ṹ01111110,⊤2ᢣᦪ=126—127=-1஺ᨵᦔᦪ:;ᑖII000000000000000000000,⊤2ᨵᦔᦪ=1.11B=l.75oᡠ>?+ᦪ1@1.75X2"=-1.75X0.5=-0.875஺⚪9.10+ᦪAB28.75᝞Dᵨᓫ!"ᓄ$%ᦪ"&⊤)ᐸ6ṹ,-஺6GHᓫ$%ᦪḄ6ṹI2Jᩭ஺28.75=00011100.11B=1.11001IBX24L./0=0஺ᢣᦪ;ᑖ4,80▤ṹ110000011=4+127=131஺ᨵᦔᦪ:;ᑖ11001100000000000000000»?᪵28.75⊤2ᡂᓫ$%ᦪ1@01000001111001100000000000000000B=01000001111001100000000000000000B=41E60000HGP᝞Q@;ᦪSf32drea1428.75;ᓫ$%ᦪ;aṹSmoveax,dwordptrf32d;j28.75Ḅ$%"&6ṹcalldisphd⚪9.11p᝞Q$%"&ᦪḄᨵᐵᭆr@1ᦪstuᦪQt2!"ᓄᨵ▲ᦪuw!"ᓄᨵ▲ᦪ3NaNuxyᜧ1ᦪst@{ᦪ|}~⊤)Ḅᨬᦪ⌕ஹ⌕0ᦪQt஺ᦪQt@{ᦪ|}~⊤)Ḅᨬᜧᦪ⌕ᜧᦪst஺2!"ᓄᨵ▲ᦪ@ᵨ!"ᓄ"&⊤)Ḅᦪ஺'⊤)ḄᦪB@1.XXX…XX஺'Ḅᨬ0ឤ11,ᦪ;ᑖᨵᦔᦪ:◤⌕⊤)ᦪ;ᑖ◚᦮ᦪ1஺w!"ᓄᨵ▲ᦪ@ᢣᦪ6ṹ1ᐰ0;ᨵᦔᦪ:⊤2ᦪ;ᑖஹ}ᐰ0,⊤2ḄᦪB@0.XXX…XX,ᵨL⊤)|!"ᓄ"&}⊤)ḄḄ+ᦪ஺

78(3)NaN@ᢣᦪ6ṹᐰ1ஹᨵᦔᦪ:6ṹᐰ0Ḅ$%"&6ṹ1wᦪNaN(NotaNumber),'+ᦪ஺xyᜧ@ᢣᦪ6ṹ1ᐰ1,ᨵᦔᦪ:6ṹ1ᐰ0Ḅ$%"&6ṹᵨL⊤)ᜧL!"ᓄ$%ᦪᡠ}⊤)ḄᨬᜧᦪḄAB஺(⚪9.12),-᦮ᦪu$%ᦪ᡽ᨵSSE3ᢣḄPentium4¡ᢝ£ᦪ¤()᦮ᦪᢣ¦8ஹ16ஹ32ᡈ640Ḅ᦮ᦪ¨ᔠªᡂ᦮«஺$%ᦪᢣ¦ᓫᡈ¬$%ᦪ¨ᔠªᡂ᦮«஺SSE3ᢣḄPentium4¡ᢝ1280ᦪ¤ᐹ«ᨵ@:⁚ஹ:ஹ¬:ஹ4:᦮ᦪᓫ$%ᦪ¬$%ᦪ஺(⚪9.13)SIMD,-¯°±²MMXᢣ᝞³ᑭᵨ?µ᪀ᱯ%()SIMD⊤2ᓫᢣ¦ᦪ(SingleInstructor!MultipleData)஺°᝞PADDBᩩᢣ¹>+º8¨᦮:⁚ᦪḄ»u¼ᑮ¾¿Ḅ8µD஺(⚪9.14),-ÀÁÂÃu⛳uÂÃ஺ÅJ᝞QµD@(1)ÀÁÆ:7F38H+1707H(2)ÀÁÈ@1707H-7F38H(3)x./⛳uÆ@7F38H+1707H(4)x./⛳uÈ@1707H-7F38H(5)ᨵ./⛳uÆ@7F38H+1707H(6)ᨵ./⛳uÈ@1707H—7F38H()ÉÁÂÃ@ÊËḄÃÌÂÃᓽ{x./ᦪḄÂõDÎÏᐸᦪ¤Ð▲'ÑÒÓËÑ0Ô0஺ÕÑ0ᡈÔ0Ö}×᧜Jᩭ஺⛳uÂÃ@ᢣÂõDÎÏᐸᦪÐ▲.ᐸµDᨬᜧᡈᨬBᡠÙa஺(1)ÀÁÆ@7F38H+1707H=963FH(2)ÀÁÈ@1707H-7F38H=87CFH(3)x./⛳uÆ@7F38H+1707H=963FH(4)x./⛳uÈ@1707H-7F38H=0000H(⛳u)(5)ᨵ./⛳uÆ@7F38H+1707H=7FFFH(⛳u)(6)ᨵ./⛳uÈ@1707H-7F38H=87CFH(⚪9.15)Úᓫ±²᝞QÛÜ(ᭆr)ḄÝ@(1)Load-Storeµ᪀(2)ÎÞᢣßàá

793ᢣßàáḄâã4ᢣᐵ5äᐭ1Load-Storeµ᪀@ᜐᳮᘤᑁ;íîï¦ḄÊᵨðñᘤ¦ᦪòóÃÌôõÂÃᙠðñᘤ÷ðñᘤøùᨵ“jᦪLoad”u“ñᦪStore”ᢣüýñþᘤ஺ᡈὅᘤLoadStoreᢣ஺2ᢣ!"ᢣḄ$%▤'ᓄᑖ*+,-./ᑁ123⚣᳛678ḼḄ2:$%;<=>?1ᑖ᡻A6*B:23;ðñHI-Aឋ஺3ᦪ|bᐵ;<ᵨòᘤ=óôᢈÃõ◀஺4Intel64᪀øᢝ16:64q᦮ᦪᵨòᘤ஺5IntelCore᪀øᢝüᢈÃ஺Ìজ┯ঝঞ┯টঠ┯⚪10.3⚪1ᨵឋḄឋḄឋ!"ᑁ

80Ḅឋ஺2Pentiumᜐᳮᘤ01᡻ᩩ45ᢣ78ᙠBTBḄᔊ=>?10,ᑣ⚜CᑖEF᝞HIJᑖEᑣKᔊ=>ᡂ?FM᝞H⚜C┯NᑣKᔊ=>ᡂ?஺᝞H145ᢣ7ḄJ▭᡻PQRᑖE“TTT……”ᑣᑭᵨPentiumḄᑖE⚜CY᪀8Ḅ[I\]?^ᑖ_஺3`aIA-64g᪀Ḅhiᜐᳮᘤjᵨkᢈm128>Ḅᢣ7oᒹqᩩᢣ7rᨵᢣsᢣ7ឋḄtuv஺4Intel64g᪀xy8zᵨ{|ᘤ}?F~ᩭḄ8zᵨ{|ᘤ᡽?64>}?o5᪶ᜐᳮᘤaᜐᳮᘤFlynnᑖḄ஺জឋឋঝ4511,01,50ঞVILWEPIC,3টR8-R15,RAX-RSPঠMIMD⚪10ভIntel80486ᢣ7¡¢Pentium£᪗¥ᢣ7¡ᢣ¦8§Ḅ¨஺PentiumḄ£᪗¥᦮ᦪᢣ7¡Ḅᔜ▤!Intel80486,®ᑖᡂk5¯°±Rᐸ³3¯°´µᙠ8Ḅ2¡U¡¢V¡·஺⚪10.5Pentium£᪗¥ᢣ7¡?¸¹▲ᑴ¼ᩖᢣ7ஹ|ᙠᦪ¿ÀᐵḄᢣ7¢45ᢣ7ÂTÃJÄÅ᡻ÆÇ?PentiumḄᩩᢣ7¡U¢VTRÈᐰÀḄÊ᝞V¡ËÃ᡻Ìᓫᢣ7ᡠµT´ÃJļᩖᢣ7ḄÅ᡻஺|ᙠᦪ¿ÀᐵḄᢣ7◤⌕᡻ÈÑᩩᢣ7ÒÃÓᑮ³ᩩᢣ7◤⌕ḄÕÖᦪᡠµ×Ø·᡻஺|ᙠ45ᢣ7◤⌕᡻ÈÑᩩᢣ7ÒÃÙÚRᔲ᡻³ᩩᢣ7ᡠµ×TÃÅ᡻஺⚪10.6¸¹RPentiumḄÜ᝱ᑖE⚜C¢PentiumIIḄ☟᝱ᑖE⚜CÆa᝞ßàáᱏãᑖäᢣ¦Pentiumᜐᳮᘤåæ᡻45ᢣ7Ü᝱ᑖE⚜CḄgH¢PentiumIIḄ☟᝱ᑖE⚜CḄgH஺1ᓫᑖEg᪀movecx,12cmpeax,7jneEAX_7movecx,17EAX_7:2ðñg᪀

81loopx:addlist[eax*4],5deceaxjnzloopxÜ᝱ᑖE⚜CòPentiumóᢝᑖEõ᪗ö÷ᘤBTB,ᵨ8øùᨬûjᵨḄ45ᢣ7ḄᨵᐵPQÜ᝱⚜CüÑ45ᢣ7RᔲᑖEFᙠ⚜CýIþ´µØÿḄ᡻᝞⚜┯ᑣ34Ḅ஺☟᝱ᑖ⚜ᑖ᪗ᘤBTB"#$᝱ᑖ⚜%&ᨵ()Ḅ*+ᢣ-Ḅᑖ⚜.⚪஺⚜0ᩩ2*+ᢣ-3ᑖ஺⚜ᔣ5ᑖḄᩩ2*+ᢣ-63ᑖ஺⚜ᔣ7ᑖḄᩩ2*+ᢣ-3ᑖ஺1Pentium$᝱ᑖ⚜6ᑖ஺PentiumII☟᝱ᑖ⚜6ᑖ2Pentium$᝱ᑖ⚜6ᑖ஺PentiumII☟᝱ᑖ⚜ᑖ#8⚪10.79:NetBurst;<᪀Ḅ>?Cache@ABCP6;<᪀ḄL1ᢣ-Cache?Core;<᪀ḄD᪶ᜐᳮᘤᐳIL2Cache@ABCPentiumDJKLᵨL2Cache?#N%>?CacheOPQRṹᢣ-ᓽ;UV஺OPQRṹᢣ-LWIA-32ᢣ-ḄRṹXY⌕᡻[\"ᑖ]^ᩭ஺ᢣ-`aRṹbcade>?Cache,ᯠ7ghijᢣ-Cachek᪵mnLᵨ஺P6;<᪀ḄL1ᢣ-CacheoᯠpOPqrᢣ-sṹḄᢣ-Cache,tᢣ7u◤⌕Rṹ஺Core;<᪀"wᜐᳮᘤᐳIL2Cache,xyᐙᑖᑭᵨCache|}@wᜐᳮᘤᐳᵨ஺~ᜐᳮᘤᔜᨵJKḄL2Cache,ᑣCache`@Ḅᜐᳮᘤ஺#8⚪10.8ᓫ9:᝞#ᭆ%Ḅ1᪗ᢈ#2ᢣ-c3᡻#4Oᘤm5᡻6VLIW7EPIC#8ᢈ9SIMD10᪶ᜐᳮᘤ#N%#1%᪗ᢈᢣ᪗ᢣ-Ḅ᡻ឋḄkᜐᳮᘤᢈ஺ᜐᳮᘤ¡ᵨᩩᢣ-¢£xy¤¥kᕜ§¨ᡂᩩᢣ-Ḅ᡻஺#2ᢣ-cᢣ-pᜐᳮᘤ᡻Ḅª«ᓫ¬•ᢣ-cpᢣ3᣾ᢣ-¯}Ḅc᡻°±gpᜐᳮᘤᑁ³UVḄc´஺#3᡻ᩩᢣ-µᐭᜐᳮᘤ᡻ᓫᐗᢣ-᡻Ḅ¸6¹kºᢥ᯿¸ஹxpḄᓽ᡻஺#4OᘤmLᵨ¾¿OᘤÀÁḄᎷᦪľᐵ`⌕ÆᦋOᘤgxyÈ◀ᢣ-¾ᐵḄᢈ஺

82(5)᡻ᜐᳮᘤ¡ᵨᑖ⚜ᢈᢣ-ᑖÎÏcᢥ᯿<3〈Ñ᡻ᢣ-Ògp᡻஺(6)VLIWØᢣ-ÙkᑭᵨÚ2ÛRᘤÜÝᢣ-c᡻°Ḅᢈ஺(7)EPICâãcäåVL1Wᢈ64¬ItaniumîᑡᜐᳮᘤY⌕¡ᵨḄឋḄᢈ஺(8)ᢈñLkᱥᳮᜐᳮᘤóôᨵwõöᜐᳮᘤ~õöᜐᳮᘤ÷ᢝkᝅ¨᦮Ḅ<᪀û᝱ᐳIüýᱥᳮᜐᳮᘤþᡠᨵ᡻஺(9)SIMDᓫᢣᦪᢣᩩᢣᦪ(᡻)஺(10)᪶ᜐᳮᘤᙠ(ᱥᳮ*+ᑁᑴ./(ᡈ(ᜐᳮᘤ᡻᪶12ᡂḄᜐᳮᘤ஺(5⚪10.9)8ᓫ9:;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
最近更新
更多
大家都在看
近期热门
关闭