ﺗﻤﺮﯾﻦ ١ ﻣﻮﻋﺪ ﺗﺤﻮﻳﻞ :ﺟﻤﻌﻪ ۸۹/۸/۲۱ﺳﺎﻋﺖ ۲۴:۰۰ ﺑﺮﻧﺎﻣﻪﺍﯼ ﺑﻨﻮﻳﺴﻴﺪ ﮐﻪ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻠﻬﺎﯼ MOV PUSH POP ADD ﺭﺍ ﮔﺮﻓﺘﻪ ﻭ ﺁﻧﻬﺎ ﺭﺍ ﺑﻪ ﮐﺪ ﻣﺎﺷﻴﻦ ﻣﺘﻨﺎﻇﺮ ﺗﺒﺪﻳﻞ ﮐﻨﺪ .ﺑﺮﻧﺎﻣﻪ ﺑﺎﻳﺪ ﮐﻠﻴﮥ ﺳﺒﮑﻬﺎﯼ ﺁﺩﺭﺱﺩﻫﯽ ۸۰۸۶ﺭﺍ ﭘﺸﺘﻴﺒﺎﻧﯽ ﮐﻨﺪ؛ ﻭ ﺩﺭ ﺻـﻮﺭﺗﯽ ﮐـﻪ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻞ ﻧﺎﺩﺭﺳﺘﯽ ﻭﺍﺭﺩ ﺷﻮﺩ ﺧﻄﺎ ﺩﻫﺪ .ﻣﺜﻼً: Machine Code ------------------50 8B4208 81C20115 Assembly Code ------------------------PUSH AX MOV ]AX, [BP+SI+08 ADD DX, 1501 ERROR ERROR PUSH MOV 10 ]CX, [AX+SI ﺗﻮﺟّﻪ ﮐﻨﻴﺪ ﮐﻪ ﺍﻋﺪﺍﺩﯼ ﻧﻈﻴﺮ AFDEﺑﺎ ﻳﮏ »ﺣﺮﻑ« ﺷﺮﻭﻉ ﻣﯽﺷﻮﻧﺪ .ﺑﺮﺍﯼ ﺭﺍﺣﺘﯽ ﮐﺎﺭ ﻣﯽﺗﻮﺍﻧﻴﺪ ﻓﺮﺽ ﮐﻨﻴﺪ ﮐﻪ ﺩﺭ ﭼﻨـﻴﻦ ﺣﺎﻟﺘﻬـﺎﻳﯽ ﺍﺯ ﭘﻴﺸﻮﻧﺪ » «۰ﺍﺳﺘﻔﺎﺩﻩ ﻣﯽﮐﻨﻴﻢ .0AFDE :ﺑﻨﺎﺑﺮﺍﻳﻦ ﺗﻤﺎﻡ ﺍﻋﺪﺍﺩ ﻭﺭﻭﺩﯼ ﺑﺎ ﻳﮏ ﺭﻗﻢ ۹-۰ﺁﻏﺎﺯ ﻣﯽﺷﻮﻧﺪ. ﺑﺮﻧﺎﻣﮥ ﺷﻤﺎ ﺑﺎﻳﺪ ﺑﺘﻮﺍﻧﺪ ﻋﻼﻭﻩ ﺑﺮ ﺗﺒﺪﻳﻞ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻞ ﺍﺳﻤﺒﻠﯽ ﺑﻪ ﮐﺪ ﻣﺎﺷﻴﻦ ،ﻋﻤﻞ ﺑﺮ ﻋﮑﺲ ﺭﺍ ﻧﻴﺰ ﺍﻧﺠﺎﻡ ﺩﻫﺪ؛ ﻳﻌﻨﯽ ﮐﺪ ﻣﺎﺷﻴﻦ ﻣﺘﻨـﺎﻇﺮ ﻼ ﻭﺭﻭﺩﯼ 81C20115ﻣﺘﻨﺎﻇﺮ ﺩﺳـﺘﻮﺭﺍﻟﻌﻤﻞ ﺑﺎ ﻳﮑﯽ ﺍﺯ ﭼﻬﺎﺭ ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻞ ﻓﻮﻕ ﺭﺍ ﮔﺮﻓﺘﻪ ﻭ ﺩﺳﺘﻮﺭ ﺍﺳﻤﺒﻠﯽ ﻣﺘﻨﺎﻇﺮ ﺭﺍ ﺧﺮﻭﺟﯽ ﺩﻫﺪ .ﻣﺜ ً ADD DX, 1501ﺍﺳﺖ .ﺩﺭ ﺻﻮﺭﺗﯽ ﮐﻪ ﻭﺭﻭﺩﯼ ﻣﺘﻨﺎﻇﺮ ﻫﻴﭻ ﻳﮏ ﺍﺯ ٤ﺩﺳﺘﻮﺭﺍﻟﻌﻤﻞ ﻧﺒﺎﺷﺪ ،ﻳﺎ ﺑﻪ ﻫﺮ ﺻﻮﺭﺗﯽ ﻧﺘﻮﺍﻥ ﺁﻥ ﺭﺍ ﺗﺮﺟﻤﻪ ﮐﺮﺩ، ﺑﺮﻧﺎﻣﻪ ﺑﺎﻳﺪ ﺧﻄﺎ ﺩﻫﺪ. ﻧﮑﺘﮥ :١ﺑﺮﻧﺎﻣﻪ ﺭﺍ ﺑﻪ ﺯﺑﺎﻥ ﺩﻟﺨﻮﺍﻩ ﺧﻮﺩ ﺑﻨﻮﻳﺴﺪ .ﭘﻠﺘﻔﺮﻣﻬﺎﯼ ﻭﻳﻨﺪﻭﺯ ﻭ ﻟﻴﻨﻮﮐﺲ ﻣﻮﺭﺩ ﭘﺬﻳﺮﺵ ﺍﺳﺖ. ﻧﮑﺘﮥ :٢ﺑﻪ ﻫﻤﺮﺍﻩ ﻓﺎﻳﻞ ﺍﺟﺮﺍﻳﯽ ،ﮐﺪ ﺳﻮﺭﺱ ﺭﺍ ﻧﻴﺰ ﺑﻔﺮﺳﺘﻴﺪ .ﺩﺭ ﻳﮏ ﻓﺎﻳﻞ TXTﻣﺸﺨّﺺ ﮐﻨﻴـﺪ ﮐـﻪ ﭘﻠﺘﻔـﺮﻡ ،ﺯﺑـﺎﻥ ﺑﺮﻧﺎﻣـﻪ ﻧﻮﻳﺴـﯽ ،ﻭ ﻣﺮﺍﺟﻌﯽ ﮐﻪ ﺍﺯ ﺁﻧﻬﺎ ﺍﺳﺘﻔﺎﺩﻩ ﮐﺮﺩﻩﺍﻳﺪ ﭼﻪ ﺑﻮﺩﻩﺍﻧﺪ. ﻧﮑﺘﮥ :۳ﺑﺮﻧﺎﻣﮥ ﺷﻤﺎ ﺑﺎ ﺣﺪﻭﺩ ۵ﻣﻮﺭﺩ ﺩﺳﺘﻮﺭ ﺯﺑﺎﻥ ﺍﺳﻤﺒﻠﯽ ﻭ ۵ﻣﻮﺭﺩ ﺩﺳﺘﻮﺭ ﺯﺑﺎﻥ ﻣﺎﺷﻴﻦ ﺗﺴﺖ ﻣـﯽﺷـﻮﺩ .ﺗﻌـﺪﺍﺩ ﺗﺴـﺘﻬﺎﻳﯽ ﮐـﻪ pass ﺷﻮﻧﺪ ﻧﻤﺮﮤ ﺷﻤﺎ ﺭﺍ ﻣﺸﺨّﺺ ﻣﯽﮐﻨﻨﺪ. ﻼ ﻧﮑﺘﮥ :۴ﻓﺮﺽ ﮐﻨﻴﺪ ﺷﻤﺎﺭﮤ ﺩﺍﻧﺸﺠﻮﻳﯽ ﺷﻤﺎ Xﺍﺳﺖ .ﻫﻤﮥ ﻓﺎﻳﻠﻬﺎ ﺭﺍ ﺩﺭ ﭘﻮﺷﻪﺍﯼ ﺑﻪ ﻧـﺎﻡ Xﺭﻳﺨﺘـﻪ ﻭ ﭘﻮﺷـﻪ ﺭﺍ ﻓﺸـﺮﺩﻩ ﮐﻨﻴـﺪ )ﻣـﺜ ً X.rarﻳﺎ .(X.tar.gzﺳﭙﺲ ﻓﺎﻳﻞ ﻓﺸﺮﺩﻩ ﺭﺍ ﺑﻪ ﻣﻦ emailﮐﻨﻴﺪ .ﺁﺩﺭﺱ emailﻣﻦ ﺭﺍ ﺍﺯ http://ce.sharif.edu/~doustiﺑﺮﺩﺍﺭﻳـﺪ. ١ ﻋﻨﻮﺍﻥ ﺍﻳﻤﻴﻞ ﺷﻤﺎ ﺑﺎﻳﺪ [SSD]Xﺑﺎﺷﺪ .ﻣﺜﻼً ﺍﮔﺮ ﺷﻤﺎﺭﮤ ﺩﺍﻧﺸﺠﻮﻳﯽ ﺷﻤﺎ ۸۷۳۰۱۴۰۹ﺍﺳﺖ ،ﺍﻳﻤﻴﻠـﯽ ﺑـﺎ ﻋﻨـﻮﺍﻥ [SSD]87301409 ﺑﺰﻧﻴﺪ ،ﻭ ﻓﺎﻳﻞ 87301409.rarﺭﺍ ﺍﺭﺳﺎﻝ ﮐﻨﻴﺪ. ١ﺁﺩﺭﺱ emailﺭﺍ ﻣﺴﺘﻘﻴﻤﺎً ﻧﺪﺍﺩﻡ ﭼﻮﻥ ﻣﯽﺧﻮﺍﺳﺘﻢ ﺑﺎ ﻭﻳﮋﮔﯽ email hideﺁﺷﻨﺎ ﺷﻮﻳﺪ .ﻭﻟﯽ ﺍﮔﺮ ﻟﻴﻨﮏ ﻣﺴﺘﻘﻴﻢ ﺧﻮﺍﺳﺘﻴﺪ ﻣﯽﺗﻮﺍﻧﻴﺪ ﺑﻪ ﻧﺎﻡ ﮐﺎﺭﺑﺮﯼ )(dousti ﻣﻦ ﺩﺭ CEﺍﻳﻤﻴﻞ ﺑﺰﻧﻴﺪ.
© Copyright 2026 Paperzz