Å©¸®¿¡ÀÌÆ¼ºê Ä¿¸ÕÁî ¶óÀ̼¾½º

ȨÆäÀÌÁöHOME

PHP

JavaScript

HTML

CSS

µå·Ó´Ù¿î¸Þ´º

Á¦·Îº¸µå4

µµ   ¿ò   ¸»

¹éÁö °Ç°­°­ÁÂ/ÀÚ°¡ÀÓ»óüÇè

¹°¹Ú»ç(ÀÚ°¡¸é¿ªÁúȯ...)^¹Ì·¯

Àüµ¿¸í(õ¿¬¹°Áú»çÀü)^¹Ì·¯

ñÓï£ Àå½Â¿Á(ºí·Î±×)^±Û¸ñ·Ï

°è»êȯ»ê(°è»ê±â)^ ´ÜÀ§º¯È¯

°üÁÖ¼º°æ TTS ÀÏ¹ÝÆÄÀÏ TTS

¹ÙÀ̺í·Î Bible_ro ´Ù¿î·Îµå

´Ù¿î·Îµå>Æù¿¡ º¹»ç
>ÆÄÀϼ±ÅÃ...¼³Ä¡µË´Ï´Ù.

[µµ¿ò¸» º¸±â] ¹Ù·Î°¡±â

°³¼± ¿ä±¸, Ãæ°í´Â
¾Æ·¡ °ü¸®ÀÚ ¿¬¶ô
ÀüÈ­/¸ÞÀÏ ºÎŹ µå¸³´Ï´Ù.
ÃÖ´ëÇÑ »¡¸® ó¸®Çϰí
¾÷µ¥ÀÌÆ® ¿Ã¸®°Ú½À´Ï´Ù.


asm_51.

(¸í·É¾î)

¾î¼Àºí¸®¾î °­Á°¡ 4ºÎºÐÀ¸·Î ³ª´¹´Ï´Ù.

asm_00.À¸·Î ½ÃÀÛÇÑ µð¹ö±×¸¸À» »ç¿ëÇÑ ÇÁ·Î±×·¡¹Ö

asm_71.·Î ½ÃÀÛÇÑ ÇÏÀÌÅÚ µÎ·ç¹° °­Á ¿ä¾à Á¤¸®

asm_51.·Î ½ÃÀÛÇÏ´Â ¾î¼Àºí¸®¾î ¸í·É¾î ÇØ¼³

asm_31.·Î ½ÃÀÛÇÏ´Â Çϵå¿þ¾î °ü·Ã Á¤¸®

°¢ µ¶ÀÚÀÇ °øºÎ ÃëÇâ°ú ¹æÇâÀÌ  ´Ù¸¦ ¼ö Àֱ⠶§¹®¿¡,

ÇÊÀÚ°¡ 3°¡Áö ¹æ

ÇâÀ¸·Î ÁøÇàÇÏ´Â °­Á¿¡¼­ ¸¶À½¿¡ µå´Â °ÍºÎÅÍ °øºÎÇϽñâ

¹Ù¶ø´Ï´Ù.

°øºÎ ¼ø¼­´Â ¸¶À½¿¡ ³»Å°´Â °ÍÀÌ °¡Àå ÁÁ´Ù°í, ÇÊÀÚ´Â

¹Ï½À´Ï´Ù.






Á¦ 51 Àå  ¸í·É¾î


    ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤

    ¦¢ asm_51.ºÎÅÍ´Â ÀÎÅÚ 8088/8086 ¸í·É¾î¸¦  Á¤¸®ÇϰíÀÚ ÇÕ´Ï´Ù. ÀÌ

    À妢

    ¦¢ ¿¡¼­´Â Àü¹ÝÀûÀÎ ±âÃʸ¦ ´Ù·ç°í ´ÙÀ½  ÀåºÎÅÍ´Â ABC ¼ø¼­·Î ¸í·É

    ÇϦ¢

    ¦¢ ³ª¾¿À» ¼³¸íÇÕ´Ï´Ù. »öÀÎÀº ÀÌ Àå¿¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù. ¦¢

    ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥


ÀÌ ÀåÀ¸·ÎºÎÅÍ´Â 8088ÀÇ ¸í·É¾î¸¦ °øºÎÇϱâ·Î ÇÑ´Ù.

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)´Â ¸Þ¸ð¸®¸¦ ´ë»óÀ¸·Î ÀÛ¾÷À» ÁøÇàÇÑ´Ù.

±×·±µ¥, ÀÌ¹Ì ¼³¸íÇßÁö¸¸, ÄÄÇ»ÅÍÀÇ ¸Þ¸ð¸®´Â ÀÓÀÇÀÇ ¼ø¼­·Î Á¢±ÙÇÒ ¼ö ÀÖ´Â ºñÆ®¿­ÀÇ

¹è¿­¿¡  ºÒ°úÇÏ´Ù. ¸í·ÉÀ̳ª µ¥ÀÌÅͳª ¸ðµÎ  2Áø¼öÀÎ ±â°è¾î·Î ¸Þ¸ð¸®¿¡

ÀúÀåµÇ¾î ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÉ »Ó¸¸ ¾Æ´Ï¶ó, ¸Þ¸ð¸®¿¡´Â ¸í·É¾î¿Í ±× ¸í·É¾î¿¡ µû¶ó

ó¸®ÇÒ ´ë»óÀÌ µÇ´Â µ¥ÀÌÅͰ¡ ºñÆ®¿­À̶ó´Â µ¿ÀÏÇÑ ¸ð¾çÀ¸·Î µÚ¼¯¿© ÀÖ´Ù.

±×·¸±â ¶§¹®¿¡, °°Àº ¸Þ¸ð¸®¿¡  µÚ¼¯¿© ÀúÀåµÇ¾î ÀÖ´Â ºñÆ®¿­ Áß¿¡¼­ ¾î¶²

°ÍÀÌ ¼öÄ¡ ÀÚ·áÀÌ°í ´Ù¸¥ ¾î¶² °ÍÀÌ ¸í·É¾î ÄÚµåÀÎÁö¸¦ ±¸ºÐÇÏ´Â ÀÏÀÌ ÇÁ·Î¼¼¼­ÀÇ

Áß¿äÇÑ ÀÛ¾÷À¸·Î µîÀåÇÏ°Ô µÈ´Ù.

ÄÄÇ»ÅÍ ÇÁ·Î¼¼¼­´Â  ¸í·É¾î¿Í µ¥ÀÌÅÍ(¿©±â¿¡¼­ µ¥ÀÌÅͶó´Â ¸»Àº ó¸®ÇÒ ´ë»óÀÌ

µÇ´Â ÀÚ·á)¶ó´Â ±× µÎ °¡Áö¸¦ ±¸ºÐÇÒ ¼ö ÀÖÀ»±î?

±× ¹®Á¦¸¦ ÀÌÇØÇÏ·Á¸é, ÇÁ·Î¼¼¼­°¡ ÇÏ´Â ÀÏÀ» ¸ÕÀú ÀÌÇØÇÒ Çʿ䰡 ÀÖ´Ù.


    ½ÇÇàÇÒ ¸í·É¾î¸¦ ¸Þ¸ð¸®¿¡¼­ ÀÐ¾î ¿Â´Ù.

    ±× ¸í·É¿¡ ´ëÇÑ ÀÛ¾÷À» ÇÑ´Ù.


´Ù½Ã ¸»Çؼ­ Àаí ÀÛ¾÷Çϰí, ¶Ç Àаí ÀÛ¾÷ÇÏ´Â °ÍÀÌ ÇÁ·Î¼¼¼­ÀÇ ÀÏÀÌ´Ù.

¾Ë°í º¸¸é ÇÁ·Î¼¼¼­°¡ Àоî¾ß  µÉ ¸í·É¾îµµ ¸Þ¸ð¸®¿¡ ÀÖ°í, ¸í·É¾î¿¡ µû¶ó

ÀÛ¾÷ÇÑ °á°úµµ °á±¹ ¸Þ¸ð¸®¿¡ ±â·ÏÇÏ°Ô µÇ´Â °ÍÀÌ´Ù.






ÇÁ·Î¼¼¼­°¡ ¸Þ¸ð¸®·ÎºÎÅÍ ¸í·É¾î¸¦ Àд ÀÛ¾÷À» fetch cycle(ÃÊÄ¡ ÇàÁ¤)À̶ó Çϰí,

±× ¸í·É¾î¸¦ ó¸®ÇÏ´Â ÀÛ¾÷À» execution cycle(½ÇÇà ÇàÁ¤)À̶ó°í ºÎ¸¥´Ù.

°¡·É ¸Þ¸ð¸®¿¡ F3(h) Áï 11110011(b)ÀÌ  ÀúÀåµÇ¾î ÀÖÀ» ¶§ ±× ¼öÄ¡´Â ¸í·É

ÄÚµå repz¸¦ Ç¥½ÃÇÒ ¼öµµ ÀÖ°í, ´Ü¼øÇÑ ¼öÄ¡ ÀÚ·á 243(d)¸¦ Ç¥½ÃÇÒ ¼öµµ Àֱ⠶§¹®¿¡

»ç¶÷ÀÌ ´ëÃæ º¸¾Æ¼­´Â ¸í·ÉÀÎÁö ÀÚ·áÀÎÁö ¾Ë±â ¾î·Æ´Ù.

±×·¯³ª ÄÄÇ»ÅÍÀÇ  ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)´Â ÇöÀç  ÀڱⰡ ÇÏ´Â ÀÏÀÌ

 ÃÊÄ¡ ÇàÁ¤(fetch cycle)ÀÎÁö ¾Æ´Ï¸é ½ÇÇà ÇàÁ¤(execution cycle)ÀÎÁö¿¡ µû¶ó

°°Àº ¼öÄ¡¶óµµ ÃÊÄ¡ ÇàÁ¤ÀÇ ´ë»óÀÏ ¶§´Â  ¸Þ¸ð¸®ÀÇ ÇÑ ¹ÙÀÌÆ®¸¦ ¸í·É ÄÚµå·Î

Ãë±ÞÇÏ¸ç ½ÇÇà ÇàÁ¤ Áß¿¡´Â ±×°ÍÀ» ´Ü¼øÇÑ ¼öÄ¡ ÀÚ·á·Î Ãë±ÞÇÏ¿© ±¸ºÐÇÏ´Â °ÍÀÌ´Ù.



         ## ÇÊÀÚÅë½Å




    ÃÊÄ¡ ÇàÁ¤ÀÌ ¹«¾ùÀÌ°í ½ÇÇà ÇàÁ¤ÀÌ ¹«¾ùÀÎÁö¸¦ ÀÌÇØÇϱâ À§Çؼ­´Â ÀÛ¾÷ÀÇ

    ¿¬¼Ó¼º¿¡ °üÇÑ ÀÌÇØ°¡  ÇÊ¿äÇÒ °ÍÀÌ´Ù. ¸í·É ÄÚµå ´ÙÀ½¿¡´Â ÀÛ¾÷ ´ë»óÀÌ

    µÇ´Â ¼öÄ¡ ÀÚ·á°¡ ¿Í¾ß µÇ°í, ÇÊ¿äÇÑ ¼öÄ¡ ÀÚ·á°¡ ³¡³ª ¸í·ÉÀÌ ¿Ï¼öµÇ¾ú´Ù¸é

    ±× ÈÄ¿¡´Â ´Ù¸¥ ¾î¶² ¸í·ÉÀÌ ÀÖ¾î¾ß ÀÛ¾÷ÀÌ ¿¬¼ÓµÉ °ÍÀÌ´Ù. À̰ÍÀº ºñÀ¯ÄÁ´ë,

    ¹è°¡ °íÇÁ¸é ¹«¾ð°¡¸¦ ¸Ô¾î¾ß µÇ°í ¸Ô¾î¼­ ¹è°íÇ »óŰ¡ ÇØ¼ÒµÇ¾ú´Ù¸é ±× ´ÙÀ½¿¡´Â

    ´Ù¸¥ ¹«¾ð°¡¸¦ ÇÒ ¼ö ÀÖ´Â Àλý°ú ºñ½ÁÇÏ´Ù°í º¼ °ÍÀÌ´Ù. ÇÊÀÚÀÇ  ÀÌ ¼³¸íÀÌ

    µ¶ÀÚÀÇ ÀÌÇØ¿¡ ´Ù¼Ò µµ¿òÀÌ µÇ±â¸¦ ¹Ù¶ó¸ç, ¾à°£ ¾î·Æ´õ¶óµµ ¸Å´Þ¸®Áö ¸»°í ³Ñ¾î°¡±â

    ¹Ù¶õ´Ù.


ÃÊÄ¡ ÇàÁ¤Àº ´Ü¼øÈ÷ PC°¡ ÁöÀûÇϰí ÀÖ´Â ±â¾ïÀå¼Ò¿¡¼­ ¸í·É¾îÀÇ Ã¹ ¹ÙÀÌÆ®¸¦ Àоî

µéÀÏ »ÓÀ̸ç, ±× ÈÄ¿¡ PC´Â ´ÙÀ½ÀÇ ±â¾ïÀå¼Ò¸¦ ÁöÀûÇϱâ À§ÇÏ¿© ´ÙÀ½ ¹ÙÀÌÆ®ÀÇ ÁÖ¼Ò·Î

°»½ÅµÈ´Ù. ¸¸¾à ¸í·É¾î°¡ ÇÑ ¹ÙÀÌÆ®·Î ³¡³ªÁö ¾Ê°í µÎ ¹ÙÀÌÆ® ÀÌ»óÀÇ Å©±â¸¦ °¡Áö´Â

°ÍÀ̶ó¸é ¸í·É¾îÀÇ ³¡±îÁö ÃÊÄ¡ ÇàÁ¤À¸·Î ÀÐ°Ô µÉ °ÍÀÌ´Ù.

½ÇÇà ÇàÁ¤ °úÁ¤¿¡ 󸮵Ǵ µ¿ÀÛÀº ÀÐÇôÁø ¸í·É¾î¿¡ µû¶ó ´Þ¶óÁú °ÍÀÌ´Ù.






Á¦ 1 Àý  ¸í·É¾îÀÇ Å©±â, Çü½Ä

¸í·É¾îµµ ÇÁ·Î¼¼¼­¿¡ µû¶ó ´Þ¶óÁø´Ù.

ÀÎÅÚ Ä¨¿¡¼­µµ 8088, 8086, 80286, 80386ÀÇ ¸í·É¾î°¡ ¼­·Î ´Ù¸£´Ù. ¹°·Ð ÇÁ·Î¼¼¼­°¡

¹ßÀüÇÔ¿¡ µû¶ó ¸í·É¾î°¡  È®ÀåµÇ¾î ¿Ô±â ¶§¹®¿¡ »õ·Î¿î ÇÁ·Î¼¼¼­ÀÇ ¸í·É¾î¿¡´Â

ÀÌÀüÀÇ ÇÁ·Î¼¼¼­¿¡¼­ »ç¿ëµÇ´ø ´ëºÎºÐÀÇ ¸í·É¾î°¡ ÅëÇÒ °ÍÀÌ´Ù.

ÀÌ Àý¿¡¼­´Â ÀÎÅÚ 8088ÀÇ ¸í·É¾î¸¦ ´Ù·ç±â·Î ÇÑ´Ù.


     ## Ȱ¿ë ÆÁ

    8088°ú 8086Àº ¿ÏÀüÈ÷ µ¿ÀÏÇÑ  ¸í·É¾î ¼ÂÆ®¸¦ °¡Áö°í ÀÖÀ¸¸ç, 8ºñÆ®

    ÇÁ·Î¼¼¼­ 8080, 8085ÀÇ ´ëÇ¥ÀûÀÎ ¸í·ÉµéÀ» °ÅÀÇ Æ÷ÇÔÇϰí ÀÖ´Ù.



1. ¸í·É¾îÀÇ Å©±â

ÀÎÅÚ 8088ÀÇ ¸í·É¾î´Â 1¹ÙÀÌÆ® ³»Áö 6¹ÙÀÌÆ® Å©±â·Î µÇ¾î ÀÖ´Ù.

Áï 8088ÀÇ ¸ðµç ¸í·É¾î´Â ¿µ¾î 1±ÛÀÚ ³»Áö 6±ÛÀÚ ¹üÀ§¿¡ ¼ÓÇÏ´Â °ÍÀÌ´Ù.


     ## ÁÖÀÇ

    ¸í·É¾îÀÇ Å©±â´Â ¿ì¸®°¡  ¾î¼Àºí¸®¾î·Î ÀÔ·ÂÇÏ´Â ¸í·É¾îÀÇ ±ÛÀÚ ¼ö¿Í´Â

    ¹«°üÇϸç, ±× ¸í·É¾î°¡  ±â°è¾î·Î ¹ø¿ªµÇ¾úÀ» ¶§ ¸î ¹ÙÀÌÆ®¸¦ Â÷ÁöÇϴ°¡¿¡

    ´Þ·Á ÀÖ´Ù. °¡·É  Á¦2Àý 2.2.(¸í·É¾î¿Í ÀÚ·áÀÇ ±¸ºÐ)¿¡¼­ ¿¹·Î µé¾ú´ø repz¶ó´Â

    ¾î¼Àºí¸® ¸í·É¾îÀÇ ±â°è¾î ÄÚµå´Â F3(h)·Î ±× ¸í·ÉÀº ¾î¼Àºí¸®¾î·Î´Â 4±ÛÀÚÀÌÁö¸¸

    1¹ÙÀÌÆ® ¸í·ÉÀÎ °ÍÀÌ ÁÁÀº ¿¹ÀÌ´Ù.







2. ¸í·É¾îÀÇ Çü½Ä

ÀÎÅÚ 8088/8086ÀÇ ¸í·ÉÀº 1 ³»Áö 6¹ÙÀÌÆ® ³»¿¡¼­ ±æÀ̰¡ º¯ÇÒ ¼ö ÀÖ´Â ¹æ½ÄÀ¸·Î

µÇ¾î Àִµ¥, ¸í·É¾îÀÇ ±âº» Çü½ÄÀº ´ÙÀ½°ú °°´Ù.

Á¦1¹ÙÀÌÆ® = OP

ÄÚµå(6) + D(1) + W(1)

Á¦2¹ÙÀÌÆ® = MOD(2)

+ REG(3) + R/M(3)

Á¦3¹ÙÀÌÆ® = low

displacement(low data)

Á¦4¹ÙÀÌÆ® = high

displacement(high data)

Á¦5¹ÙÀÌÆ® = low

data

Á¦6¹ÙÀÌÆ® = high

data

¸í·ÉÀÇ Á¦1 ³»Áö 2¹ÙÀÌÆ®´Â ¸í·ÉÀÇ  ±â´É ¹× µ¿ÀÛÀ» ³ªÅ¸³»´Â °¡Àå Áß¿äÇÑ

ºÎºÐÀ̸ç, ³ª¸ÓÁö ¹ÙÀÌÆ®µéÀº displacement ¶Ç´Â immedidate data·Î ±¸¼ºµÈ´Ù.

8088ÀÇ ´ëºÎºÐÀÇ ¸í·ÉÀº ¹ÙÀÌÆ®  ¹× ¿öµå µ¥ÀÌÅ͸¦ ó¸®ÇÒ ¼ö ÀÖÀ¸¸ç, ¿ÀÆÛ·£µå·Î¼­

·¹Áö½ºÅÍ(register), ¸Þ¸ð¸®(menory), ÁïÄ¡(immediate) µ¥ÀÌÅ͸¦ ÀÚÀ¯·Ó°Ô »ç¿ëÇÒ

¼ö ÀÖ´Ù. ƯÈ÷  ¿¬»êÀ̳ª ºñ±³, ½ÃÇÁÆ® ¸í·É µî¿¡¼­ ¸Þ¸ð¸® º¯¼ö(memory variable)¸¦

·¹Áö½ºÅÍ·Î ¿Å±âÁö ¾Ê°í  Á÷Á¢ »ç¿ëÇÒ ¼ö Àֱ⠶§¹®¿¡ »ç¿ëÇÒ ·¹Áö½ºÅÍÀÇ ¼ö

¹× ¸í·É ¼öÇà½Ã°£À» Àý¾àÇÒ ¼ö ÀÖ´Ù.






3. ¸í·É¾î Á¦1¹ÙÀÌÆ®ÀÇ ÀÎÄÚµù

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ¸í·ÉÀº ¾î¼Àºí¸®¾î  ·¹º§°ú ±â°è¾î ·¹º§ÀÌ Àִµ¥,

ÀϹÝÀûÀ¸·Î´Â ¾î¼Àºí¸®¾î·Î ÇÁ·Î±×·¡¹ÖÀ» ÇÏÁö¸¸ ´ÜÀÏ º¸µå ÄÄÇ»ÅÍ µî¿¡¼­´Â ±â°è¾î¸¦

Á÷Á¢ ÀÔ·ÂÇÏ´Â  °æ¿ìµµ ÀÖÀ¸¹Ç·Î ±â°è¾î ÄÚµåÀÇ  ±¸Á¶¸¦ ¾Ë¾Æ µÎ¸é Æí¸®ÇÑ

°æ¿ì°¡ ÀÖ´Ù.

¿©±â¿¡¼­´Â °¡Àå Áß¿äÇÑ ¸í·É¾îÀÇ Á¦1¹ÙÀÌÆ® ÀÎÄÚµùÀ» ¸ÕÀú ¾Ë¾Æ º¸±â·Î ÇÑ´Ù.

±âº»ÇüÀ» ¿Å°Ü µÎ°í º¸¸é¼­ ¼³¸íÀ» °è¼ÓÇϱâ·Î ÇÏÀÚ.

Á¦1¹ÙÀÌÆ® = OP

ÄÚµå(6) + D(1) + W(1)

ÀÌ¹Ì ¾Ë°ÚÁö¸¸, °¢ ¹ÙÀÌÆ®ÀÇ ºñÆ® À§Ä¡¸¦ ´Ù½Ã ÇÑ ¹ø È®ÀÎÇÏ°í ³Ñ¾î°¡ÀÚ.

(8ºñÆ®) Á¦7

6 5 4 3 2 1  0(ºñÆ® À§Ä¡)

Á¦1¹ÙÀÌÆ® = OP

ÄÚµå(6) + D(1) + W(1)


     ## Ȱ¿ë ÆÁ

    ºñÆ® À§Ä¡´Â ÀÚ¸®¼ö¿Í °°ÀÌ »ý°¢ÇÏ¸é µÇ¸ç, ¿À¸¥ÂÊ ³¡ ÀÚ¸®ºÎÅÍ ¹ÙÀÌÆ® µ¥ÀÌÅÍÀÇ

    °æ¿ì 0, 1, 2,  3, 4, 5, 6, 7ºñÆ®·Î Ç¥½ÃÇÏ¸ç ¿öµå µ¥ÀÌÅÍÀÇ °æ¿ì¿¡´Â

    ¿À¸¥ÂÊÀ¸·ÎºÎÅÍ 0, 1, 2, ... , 14, 15ºñÆ®·Î ºÎ¸¥´Ù.


±âº»Çü¿¡¼­ óÀ½ÀÇ 6ºñÆ®´Â ±âº»ÀûÀÎ  ¸í·É(add, xor µî)À» ³ªÅ¸³»´Â OP

ÄÚµåÀ̸ç, D  ºÎºÐÀº 2°³ÀÇ ¿ÀÆÛ·£µå¸¦ ¿ä±¸ÇÏ´Â  ¸í·É¿¡¼­ Á¦2¹ÙÀÌÆ®¿¡¼­

REG(·¹Áö½ºÅÍ)·Î ÁöÁ¤µÈ ¿ÀÆÛ·£µå°¡ ¼Ò½º ¿ÀÆÛ·£µåÀÎÁö ¸ñÀû ¿ÀÆÛ·£µåÀÎÁö Ç¥½ÃÇϰí,

W ºÎºÐÀº ¿ÀÆÛ·£µå µ¥ÀÌÅͰ¡ ¿öµåÀÎÁö ¹ÙÀÌÆ®ÀÎÁö¸¦ ¾Ë·Á ÁØ´Ù.

D=1 : REG·Î ÁöÁ¤µÈ µ¥ÀÌÅͰ¡ ¸ñÀû(destination) ¿ÀÆÛ·£µåÀÓ

D=0 : REG·Î ÁöÁ¤µÈ µ¥ÀÌÅͰ¡ ¼Ò½º(source) ¿ÀÆÛ·£µåÀÓ

W=1 : ¿ÀÆÛ·£µå µ¥ÀÌÅͰ¡ ¿öµå Å©±âÀÓ

W=0 : ¿ÀÆÛ·£µå µ¥ÀÌÅͰ¡ ¹ÙÀÌÆ® Å©±âÀÓ

ÀϺΠ¸í·É¿¡¼­´Â D, W ¿Ü¿¡µµ S, V, Z¿Í °°Àº ´ÜÀÏ ºñÆ® ¿µ¿ªÀÌ Æ÷ÇԵȴÙ.






S´Â W¿Í ÇÔ²² »ç¿ëµÇ¾î ÁïÄ¡(immediate) µ¥ÀÌÅÍÀÇ ºÎȣȮÀåÀ» ³ªÅ¸³½´Ù. V´Â ½ÃÇÁÆ®

¹× ·ÎÅ×ÀÌÆ® ¸í·É¿¡¼­ ºñÆ® À̵¿ÀÇ ¼ö°¡ 1ÀÎÀÌ °¡º¯ÀûÀÎÁö¸¦ Ç¥½ÃÇØ ÁØ´Ù.

Z´Â Á¶°ÇºÎ repeat ¹× loop ¸í·É¿¡¼­ Á¦·Î Ç÷¡±×¿ÍÀÇ ºñ±³ ºñÆ®·Î »ç¿ëµÈ´Ù.


     ## Ȱ¿ë ÆÁ

    ¿ÀÆÛ·£µå·Î¼­ ¿öµå µ¥ÀÌÅ͸¦  ´Ù·ç´ÂÁö ¿©ºÎ¸¦ Ç¥½ÃÇÏ´Â W ºñÆ®´Â ¸í·É¾î

    Á¦1¹ÙÀÌÆ®ÀÇ  0ºñÆ®(³¡ ÀÚ¸®) À§Ä¡¿¡ ¾²ÀÌ°í  ÀÖÀ½À» ±â¾ïÇÏ¸é ½¬¿ï

    °ÍÀÌ´Ù. ¿¹¿ÜÀûÀÎ °æ¿ì´Â  Á¶±Ý ÀÖ´Ù°¡ ´Ù·ç°Ô µÈ´Ù.  ±×¸®°í, D,

    S, V µîÀº WÀÇ ¹Ù·Î ¾ÕÀÎ 1ºñÆ® À§Ä¡¿¡ ¾²ÀδÙ.


ÀÌ»ó ¼³¸íÇÑ S, V, Z ºñÆ®ÀÇ ¿ë¹ýÀ» ¾Ë¾Æ º¸±â·Î ÇÏÀÚ.

S=1 : W=1ÀÎ °æ¿ì¿¡ 8ºñÆ® µ¥ÀÌÅ͸¦ 16ºñÆ®·Î ºÎÈ£¸¦

È®ÀåÇÔ

S=0 : ºÎÈ£¸¦ È®ÀåÇÏÁö ¾ÊÀ½

V=1 : ½ÃÇÁÆ®/·ÎÅ×ÀÌÆ® ¸í·ÉÀÇ ºñÆ®À̵¿ ¼ö¸¦ CL·Î ÁöÁ¤(°¡º¯Àû)

V=0 : ½ÃÇÁÆ®/·ÎÅ×ÀÌÆ® ¸í·ÉÀÇ ºñÆ®À̵¿ ¼ö´Â 1·Î °íÁ¤µÊ

Z=1 : Á¦·Î Ç÷¡±×°¡ 1ÀÎ µ¿¾È repeat ¶Ç´Â loop

Z=0 : Á¦·Î Ç÷¡±×°¡ 0ÀÎ µ¿¾È repeat ¶Ç´Â loop

ÀÌ»óÀÇ ¼³¸íÀ» Âü°íÇÏ¿© ½ÇÁ¦ ±â°è¾î Äڵ忡 Àû¿ëµÈ ¸í·É Çü½ÄÀ» »ìÆì º¸ÀÚ.

Á¦1Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6)

+ D(1) + W(1)

Á¦2Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6)

+ S(1) + W(1)

Á¦3Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6)

+ V(1) + W(1)

Á¦4Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(7)

+ Z(1)

Á¦5Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(4)

+ W(1) + REG(3)

Á¦6Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(5)

+ REG(3)

Á¦7Çü½Ä Á¦1¹ÙÀÌÆ® = OP ÄÚµå(3)

+ SEG(2) + (3)

ÀÌÁ¦ °¢ Çü½ÄÀÇ Á¦1¹ÙÀÌÆ® ³»¿ëÀ» ±¸Ã¼ÀûÀ¸·Î ¼³¸íÇϱâ·Î ÇÑ´Ù.






1) Á¦1Çü½Ä

¸í·É¾î Á¦1¹ÙÀÌÆ®ÀÇ °¡Àå ÀϹÝÀûÀÎ ±¸¼ºÀº ´ÙÀ½°ú °°´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6) + D(1) + W(1)

ÀÌ Çü½ÄÀº µ¥ÀÌÅÍ Àü¼Û¸í·ÉÀ̳ª  ¿¬»ê¸í·É µî 2°³ÀÇ ¿ÀÆÛ·£µå¸¦ ÇÊ¿ä·Î ÇÏ´Â

´ëºÎºÐÀÇ ¸í·É¿¡¼­ »ç¿ëµÈ´Ù.

Á¦0ºñÆ®(W)°¡ 0ÀÌ¸é ¿ÀÆÛ·£µå µ¥ÀÌÅÍÀÇ Å©±â´Â ¹ÙÀÌÆ®, 1ÀÌ¸é ¿öµå°¡ µÈ´Ù.

Á¦1ºñÆ®(D)°¡ 0ÀÌ¸é ·¹Áö½ºÅÍ ¿ÀÆÛ·£µå°¡ ¼Ò½º, 1ÀÌ¸é ¸ñÀûÀÌ µÈ´Ù.


2) Á¦2Çü½Ä

´ÙÀ½À¸·Î »ê¼ú¿¬»ê ¸í·É¿¡¼­ »ç¿ëÇÏ´Â ¸í·É ±¸¼ºÀ» º¸ÀÚ.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6) + S(1) + W(1)

Á¦1ºñÆ®(S)°¡ 0ÀÌ¸é ºÎÈ£¸¦ È®ÀåÇÏÁö ¾Ê´Â´Ù.

Á¦1ºñÆ®(S)¿Í Á¦0ºñÆ®(W)°¡ ¸ðµÎ  1À̸é, Áï ¸í·É¾î Á¦1¹ÙÀÌÆ®°¡ ......11·Î

³¡³ª¸é, 8ºñÆ® µ¥ÀÌÅ͸¦ 16ºñÆ®·Î ºÎÈ£¸¦ È®ÀåÇÑ´Ù.


3) Á¦3Çü½Ä

´ÙÀ½ Çü½ÄÀº shift ¹× rotate ¸í·É¿¡¼­ »ç¿ëµÇ´Â ±¸¼ºÀÌ´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(6) + V(1) + W(1)

Á¦1ºñÆ®(V)°¡ 0À̸é 1ºñÆ®¸¸Å­¸¸ À̵¿ÇÑ´Ù.

Á¦1ºñÆ®(V)°¡ 1À̸é CL ·¹Áö½ºÅÍ °ª¸¸Å­ ºñÆ® À̵¿ÇÑ´Ù. CL ·¹Áö½ºÅͰ¡ ¾î¶² ¼öÀÎÁö

¹Ì¸® ¾Ë ¼ö ¾ø±â ¶§¹®¿¡ °¡º¯ÀûÀÎ ºñÆ® À̵¿À̶ó°í ¸»ÇÏ´Â °ÍÀÌ´Ù.






4) Á¦4Çü½Ä

À̹ø¿¡´Â W ºñÆ®°¡ ¾ø´Â Ư¼öÇÑ  Çü½ÄÀÌ´Ù. ¸í·ÉÀÇ ¹Ýº¹ ¶Ç´Â ·çÇÁ°¡ Á¦·Î

Ç÷¡±×ÀÇ °ª¿¡ µû¶ó Á¶°ÇºÎ·Î °è¼ÓµÇ´Â ¸í·É Çü½ÄÀÌ µÈ´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(7) + Z(1)

ÀÌ Çü½Ä¿¡ ÇØ´çµÇ´Â ¸í·É¾î·Î´Â repeat, loop µîÀÌ ÀÖ´Ù.


5) Á¦5Çü½Ä

À̹ø¿¡´Â ¸í·É¾îÀÇ Á¦1¹ÙÀÌÆ®¿¡ ·¹Áö½ºÅÍ ¿ÀÆÛ·£µå°¡ Æ÷ÇԵǴ Çü½ÄÀÌ´Ù.

µû¶ó¼­ ±âº»Çü¿¡¼­ 0ºñÆ® ÀÚ¸®¿¡ ÀÖ´ø W ºñÆ®°¡ 3ºñÆ® ÀÚ¸®·Î ¿Å°Ü °¬´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(4) + W(1) + REG(3)

ÀÌ Çü½ÄÀº mov(e) ¸í·É¿¡¼­ »ç¿ëµÇ´Â ¸í·É ±¸¼ºÀÌ´Ù.

Âü°í·Î, ·¹Áö½ºÅÍ ¿µ¿ª 3ºñÆ®ÀÇ ÀÎÄÚµùÀ» ¼Ò°³ÇÏ¸é ´ÙÀ½°ú °°´Ù.

REG(3)  000 001

010 011 100 101 110

111

W=0 AL

 CL  DL  BL  AH

 CH  DH  BH

W=1 AX

 CX  DX  BX  SP

 BP  SI  DI


     ## Ȱ¿ë ÆÁ

    ±»ÀÌ ¿Ü¿ï ÇÊ¿ä´Â ¾ø°ÚÁö¸¸ W=0ÀÎ °æ¿ì ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ Ãë±ÞÇϱ⠶§¹®¿¡

    8ºñÆ® ·¹Áö½ºÅ͸¸ Ç¥½ÃÇÒ  ¼ö ¹Û¿¡ ¾øÀ½Àº ´ç¿¬Çϸç, ¹ÙÀÌÆ® ·¹Áö½ºÅÍÀÇ

    °æ¿ì ¸ÕÀú ÇÏÀ§  ¹ÙÀÌÆ®¿¡¼­ ACDB ¼ø¼­·Î, ±× ´ÙÀ½¿¡´Â »óÀ§ ¹ÙÀÌÆ®¿¡¼­

    °°Àº ¼ø¼­·Î, ¿öµå ·¹Áö½ºÅÍÀÇ °æ¿ì¿¡µµ °°Àº ¼ø¼­·Î, ¸¶Áö¸·À¸·Î SBSD Æ÷ÀÎÆ®

    À妽º ·¹Áö½ºÅÍ ¼ø¼­·Î ±â¾ïÇϸé ÀúÀý·Î ¿Ü¿öÁø´Ù.







ÀÌ·ÐÀûÀÎ ¼³¸í¸¸ °è¼ÓµÇ¾î Áö·çÇÑ °¨ÀÌ ÀÖÀ» °ÍÀ̹ǷÎ, ½Ç½ÀÀ» ÇØ º¸ÀÚ.

...> debug <Enter>

- a <Enter>

????:0100 mov ah,

33 <Enter>

????:0102 mov cx,

ff8a <Enter>

????:0105 <Enter>

- u <Enter>

????:0100 B433  MOV

AH,33

????:0102 B98AFF  MOV CX,FF8A

...............................

- q <Enter>

...>

¿öµå µ¥ÀÌÅÍ FF8A°¡ ¹ÙÀÌÆ®  ´ÜÀ§·Î ³ôÀº ¹ÙÀÌÆ®ºÎÅÍ ÀúÀåµÇ¾ú±â ¶§¹®¿¡

±â°è¾î Äڵ忡¼­´Â 8AFF·Î ³ªÅ¸³µ´Ù´Â »ç½ÇÀº ´Ù ¾Ë°í ÀÖÀ» °ÍÀÌ´Ù.

¿ª¾î¼ÀºíÇÑ 2ÁÙÀÇ Á¦1¹ÙÀÌÆ®¸¦ 2Áø¼ö·Î ¹Ù²Ù°í 4, 1, 3ºñÆ®·Î ³ª´©¾î º¸ÀÚ.

????:0100 (1011  0  100) 33

MOV AH,33

????:0102 (1011  1  001) 8AFF

MOV CX,FF8A

OPÄÚµå

W  REG

ÀÌ·¸°Ô ºÐ¼®ÇØ º¸´Ï ù ÁÙÀº  ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ Ãë±ÞÇÏ°í µÑ° ÁÙÀº ¿öµå

µ¥ÀÌÅ͸¦ Ãë±ÞÇß´Ù´Â »ç½ÇÀÌ W ºñÆ®¿¡ ³ªÅ¸³ª ÀÖÀ½ÀÌ È®ÀεǾúÀ¸¸ç, ù ÁÙ¿¡¼­´Â

·¹Áö½ºÅÍ AH¸¦ Ç¥½ÃÇÏ´Â 100(b)°¡  ÀԷµǾú°í µÑ° ÁÙ¿¡¼­´Â ·¹Áö½ºÅÍ CX¸¦

Ç¥½ÃÇÏ´Â 001(b)°¡ ÀԷµǾî ÀÖÀ½À» È®ÀÎÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.






6) Á¦6Çü½Ä

´ÙÀ½ Çü½ÄÀº Á¦5Çü½ÄÀÇ W ºñÆ®°¡ ¾ø¾îÁö°í, ±× ´ë½Å OP Äڵ尡 5ºñÆ®ÀÌ´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(5) + REG(3)

ÀÌ Çü½ÄÀº push,  pop, xchg(exchange), inc(rement), dec(rement) ¸í·É

µî¿¡¼­ »ç¿ëµÇ´Â ¸í·É ±¸¼ºÀÌ´Ù.

push, pop ¸í·ÉÀÇ ¿ÀÆÛ·£µå ·¹Áö½ºÅÍ´Â Ç×»ó ¿öµå°¡ µÈ´Ù. xchg, inc, dec ¸í·ÉÀº

¹ÙÀÌÆ® ¶Ç´Â ¿öµå ·¹Áö½ºÅ͸¦ ¿ÀÆÛ·£µå·Î ÃëÇÒ ¼ö ÀÖ´Ù.


7) Á¦7Çü½Ä

À̹ø Çü½ÄÀº ¼¼±×¸ÕÆ® ·¹Áö½ºÅ͸¦ ´Ù·ç´Â ¸í·É Çü½ÄÀÌ´Ù.

Á¦1¹ÙÀÌÆ® = OP ÄÚµå(3) + SEG(2) + (3)

ÀÌ Çü½ÄÀº push, pop, segment override prefix ¸í·É µî¿¡¼­ »ç¿ëµÈ´Ù.


     ## ¹ßÀü Âü°í

    segment override prefix ¸í·ÉÀº ¹°¸® ¹øÁö¸¦ »êÃâÇÒ ¶§ ±âº»(default)À¸·Î

    ÁöÁ¤µÈ ¼¼±×¸ÕÆ®  ÀÌ¿ÜÀÇ ¼¼±×¸ÕÆ® ·¹Áö½ºÅͰ¡ ¿ÀÇÁ¼Â°ú ÇÕÇØÁöµµ·Ï ÇÏ´Â

    ¸í·ÉÀ¸·Î µ¶¸³µÈ ¸í·ÉÀÌ ¾Æ´Ï¶ó ´Ù¸¥ ¸í·É¾î ¾Õ¿¡ ºÎ°¡µÇ´Â ¸í·É¾îÀ̱⠶§¹®¿¡

    prefix ¸í·ÉÀ̶ó°í ÇÏ´Â °ÍÀÌ´Ù. ±× ¸í·ÉÀÇ ¿¹´Â µÚ¿¡ ¼³¸íÇÒ ±¸Ã¼ÀûÀÎ ¸í·É

    Çؼ³À» Âü°íÇϱ⠹ٶõ´Ù.







4. ¸í·É¾î Á¦2¹ÙÀÌÆ® ÀÌÈÄÀÇ ÀÎÄÚµù

¸í·É¾îÀÇ Á¦2¹ÙÀÌÆ®´Â ÀϹÝÀûÀ¸·Î ¿ÀÆÛ·£µå¸¦ ÁöÁ¤ÇÏ´Â µ¥ »ç¿ëµÈ´Ù.

¸í·É¾î Á¦1¹ÙÀÌÆ®¿¡´Â ´ÙÀ½°ú °°Àº 3°¡Áö Çü½ÄÀÌ ÀÖ´Ù.

Á¦1Çü½Ä = MOD(2) + REG(3) + R/M(3)

Á¦2Çü½Ä = MOD(2) + 0(1) + SEG(2) + R/M(3)

Á¦3Çü½Ä = MOD(2) + (3) + R/M(3)


1) MOD ¿µ¿ª

¿ÀÆÛ·£µå 2°³°¡ ¸ðµÎ ·¹Áö½ºÅÍÀÎÁö, ¿ÀÆÛ·£µå 1°³´Â ¸Þ¸ð¸®ÀÎÁö¸¦ Ç¥½ÃÇÑ´Ù.

MOD=11ÀÎ °æ¿ì¿¡¸¸ 2°³ÀÇ ¿ÀÆÛ·£µå°¡ ¸ðµÎ ·¹Áö½ºÅÍÀÌ´Ù.

MOD ¸ðµå

 displacement

00  ¸Þ¸ð¸®

¸ðµå ¾øÀ½

01  ¸Þ¸ð¸®

¸ðµå 8ºñÆ®

10  ¸Þ¸ð¸®

¸ðµå 16ºñÆ®

11  ·¹Áö½ºÅÍ

¸ðµå ¾øÀ½


2) REG ¿µ¿ª

REG ¿µ¿ªÀº ÀϹÝÀûÀ¸·Î ¿ÀÆÛ·£µå Áß Çϳª·Î »ç¿ëµÇ´Â ·¹Áö½ºÅÍÀÇ Á¾·ù¸¦ Ç¥½ÃÇÏÁö¸¸,

immediate-to-memory ¸í·ÉÀÇ °æ¿ì¿¡´Â ¸í·ÉÀÇ ±â´ÉÀ» ³ªÅ¸³»´Â OP ÄÚµåÀÇ È®ÀåÀ¸·Î

»ç¿ëµÈ´Ù.

·¹Áö½ºÅÍ ¿µ¿ª 3ºñÆ®ÀÇ ÀÎÄÚµùÀº ´ÙÀ½°ú °°´Ù.

REG(3)  000 001

010 011 100 101 110

111

W=0 AL

 CL  DL  BL  AH

 CH  DH  BH

W=1 AX

 CX  DX  BX  SP

 BP  SI  DI






3) R/M ¿µ¿ª

R/M ¿µ¿ªÀÇ ±â´ÉÀº MOD ¿µ¿ª¿¡ ÀÇÁ¸ÇÑ´Ù.

Áï MOD=11ÀÎ °æ¿ì¿¡´Â R/MÀÌ µÎ ¹øÂ° ¿ÀÆÛ·£µåÀÎ ·¹Áö½ºÅÍÀÇ Á¾·ù¸¦ Ç¥½ÃÇÑ´Ù.

µû¶ó¼­ ±×·± °æ¿ì¿¡´Â ´ÙÀ½°ú °°Àº Çü½ÄÀÌ µÉ °ÍÀÌ´Ù.

Á¦1Çü½Ä = MOD(2) + REG1(3) + R/M Áï REG2(3)

À§¿Í °°Àº  °æ¿ì(MOD=11)¿¡ R/M °ªÀÌ Ç¥½ÃÇÏ´Â  ·¹Áö½ºÅÍÀÇ Á¾·ù´Â

¾Õ Ç׸ñ(REG ¿µ¿ª)¿¡¼­ Á¦½ÃÇÑ ·¹Áö½ºÅÍ ¿µ¿ª ÀÎÄÚµùÀ» Âü°íÇϱ⠹ٶõ´Ù.

±× ÀÌ¿ÜÀÇ °æ¿ì,  Áï MOD°¡ 00, 01, 10ÀÎ  °æ¿ì¿¡´Â ´ÙÀ½°ú °°ÀÌ ½ÇÈ¿

¹øÁö(EA, Effective Address)¸¦ °è»êÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»´Â µ¥ »ç¿ëµÈ´Ù.

R/M MOD=00

 MOD=01  MOD=10

000 [BX+SI]

[BX+SI+disp8] [BX+SI+disp16]

001 [BX+DI]

[BX+DI+disp8] [BX+DI+disp16]

010 [BP+SI]

[BP+SI+disp8] [BP+SI+disp16]

011 [BP+DI]

[BP+DI+disp8] [BP+DI+disp16]

100 [SI]

 [SI+disp8]

 [SI+disp16]

101 [DI]

 [DI+disp8]

 [DI+disp16]

110 Á÷Á¢¹øÁöÁöÁ¤

 [BP+disp8]  [BP+disp16]

111 [BX]

 [BX+disp8]

 [BX+disp16]

MOD=00ÀÇ °æ¿ì¸¸ ¾Ë¸é MOD=01, MOD=10ÀÇ °æ¿ì´Â ½±°Ô ¾Ë ¼ö ÀÖÀ» °ÍÀÌ´Ù.






4) ¸í·É¾î Á¦3 ³»Áö Á¦4¹ÙÀÌÆ®

¸í·É¾îÀÇ Á¦3,4¹ÙÀÌÆ®´Â ¸Þ¸ð¸®  ¹øÁöÁöÁ¤À» À§ÇÑ displacement ¶Ç´Â immediate

data·Î »ç¿ëµÈ´Ù.

displacement·Î¼­´Â 8ºñÆ® ¶Ç´Â 16ºñÆ®  ¸ðµÎ »ç¿ëµÉ ¼ö ÀÖÁö¸¸, ¾î¼Àºí·¯´Â

°¡´ÉÇϸé 8ºñÆ®·Î ¹ø¿ªÇÏ°í ºÎµæÀÌÇÑ °æ¿ì¿¡¸¸ 16ºñÆ®·Î ¹ø¿ªÇϵµ·Ï µÇ¾î ÀÖÀ¸¸ç,

À̸¦ Á¦2¹ÙÀÌÆ®ÀÇ MOD ¿µ¿ª¿¡µµ Ç¥½ÃÇÑ´Ù.

immediate data´Â  ¾î¼Àºí¸® ¸í·É¿¡ µû¶ó 8ºñÆ®  ¶Ç´Â 16ºñÆ®·Î °áÁ¤µÇ¸ç,

À̸¦Á¦1¹ÙÀÌÆ®ÀÇ W ¿µ¿ª¿¡µµ Ç¥½ÃÇÑ´Ù.

displacement ¶Ç´Â immediate data°¡ 16ºñÆ®ÀÏ °æ¿ì¿¡´Â ¸Þ¸ð¸® »ó¿¡¼­ Ç×»ó ¿ª¿öµå(æ½word)

¼ø¼­·Î ¹è¿­ ÀúÀåµÈ´Ù.


     ## Ȱ¿ë ÆÁ

    ¿ª¿öµå ¼ø¼­¶õ ¿öµåÀÇ »óÀ§ ¹ÙÀÌÆ®°¡ ¸Þ¸ð¸®»óÀÇ ³ôÀº ¹øÁö¿¡ ÀúÀåµÇ´Â ¸ð¾çÀ¸·Î,

    ¾Õ¿¡¼­ º» ????:0102 B98AFF  MOV CX,FF8AÀÇ ¿¹¿Í °°´Ù.



5) ¸í·É¾î Á¦5 ³»Áö Á¦6¹ÙÀÌÆ®

¸í·É¾îÀÇ Á¦5,6¹ÙÀÌÆ®´Â 8ºñÆ® ¶Ç´Â 16ºñÆ® immediate data·Î »ç¿ëµÈ´Ù.

ÀÎÄÚµù ¹æ¹ýÀº Á¦3,4¹ÙÀÌÆ®¿¡¼­ ¼³¸íÇÑ °Í°ú °°´Ù.






Á¦ 2 Àý  ¸í·É¾îÀÇ Á¾·ù

ÀÎÅÚ 8088/8086 ¸í·É¾î ¼¼Æ®¸¦ ±â´Éº°·Î ºÐ·ùÇØ º¸¸é ´ÙÀ½°ú °°´Ù.

µ¥ÀÌÅÍ Àü¼Û ¸í·É

»ê¼ú ¿¬»ê ¸í·É

ºñÆ® Á¶ÀÛ ¸í·É

½ºÆ®¸µ ¸í·É

ÇÁ·Î±×·¥ Àü¼Û ¸í·É

ÇÁ·Î¼¼¼­ Á¦¾î ¸í·É

°¢ Á¾·ù¿¡ ¾î¶² ¸í·ÉÀÌ ÀÖ´ÂÁö ¾Ë¾Æ º¸ÀÚ.


1. µ¥ÀÌÅÍ Àü¼Û ¸í·É

¹ü¿ë µ¥ÀÌÅÍ Àü¼Û  : MOV, XCHG, PUSH,

POP, XLAT

ÀÔÃâ·Â  :

IN, OUT

¾îµå·¹½º Àü¼Û :

LEA, LDS, LES

Ç÷¡±× Àü¼Û :

LAHF, SAHF, PUSHF, POPF


2. »ê¼ú ¿¬»ê ¸í·É

°¡»ê  :

ADD, ADC, INC, AAA, DAA

°¨»ê  :

SUB, SBB, DEC, NEG, CMP, AAS, DAS

½Â»ê  :

MUL, IMUL, AAM

Á¦»ê  :

DIV, IDIV, AAD, CBW, CWD






3. ºñÆ® Á¶ÀÛ ¸í·É

³í¸® ¿¬»ê :

NOT, AND, OR, XOR, TEST

ºñÆ® À̵¿ :

SHL/SAL, SHR, SAR

ºñÆ® ȸÀü :

ROL, ROR, RCL, RCR


4. ½ºÆ®¸µ ¸í·É

Repeat Prefix :

REP, REPE/REPZ, REPNE/REPNZ

ºí·Ï µ¥ÀÌÅÍ Ã³¸®  : MOVSB/MOVSW,

CMPSB/CMPSW, SCASB/SCASW,

LODSB/LODSW,

STOSB/STOSW


5. ÇÁ·Î±×·¥ Àü¼Û ¸í·É

¹«Á¶°Ç Àü¼Û : JMP, CALL, RET

Á¶°ÇºÎ Àü¼Û : JA/JNBE, JAE/JNB, JB/JNAE, JBE/JNA,

JC, JE/JZ,

JG/JNLE,

JGE/JNL, JL/JNGE, JLE/JNG, JNC, JNE/JNZ,

JNO,

JNP/JPO, JNS, JO, JP/JPE, JS

¹Ýº¹ Á¦¾î : LOOP, LOOPE/LOOPZ, LOOPNE/LOOPNZ,

JCXZ

ÀÎÅÍ·´Æ®  : INT, INTO, IRET


6. ÇÁ·Î¼¼¼­ Á¦¾î ¸í·É

Ç÷¡±× Á¦¾î :

STC, CLC, CMC, STD, CLD, STI, CLI

¿ÜºÎ µ¿±â Á¦¾î  : HLT,

WAIT, ESC, LOCK

No Operation  :

NOP






Á¦ 3 Àý  ¸í·É¾î »öÀÎ

ÇÊÀÚ°¡ ¾î¼Àºí¸® Âü°í¼­¸¦ º¸¸é¼­ °¡Àå ¾î·Æ°Ô ´À²¼´ø ºÎºÐÀÌ ¾î¶² ¸í·É¾î¸¦ ã¾Æ

º¸°í ½ÍÀ» ¶§ »öÀÎÀÌ  ¾ø´Â Á¡À̾ú´Ù. º»¹® ¼³¸íÀº ´ë°³ ¸í·É¾îÀÇ ¿ëµµ¿¡ µû¶ó

ÃǰèÀûÀ¸·Î ÁøÇàÇϸ鼭 Ã¥ µÚ³ª ¾îµð¿¡µµ »öÀÎÀÌ ¾ø´Â Âü°í¼­´Â ¹«Á¶°Ç ¼ø¼­´ë·Î

°øºÎÇϵçÁö ¾î·µç ¾î´À Á¤µµ  À±°ûÀ» Àâ°í ³­ ÈÄ¿¡¶ó¾ß ¼ö½Ã·Î ±Ã±ÝÇÑ ºÎºÐÀ»

ã¾Æ º¼ Á¤µµÀÇ ÈûÀÌ  »ý±â´Âµ¥, ¸¹Àº »ç¶÷Àº ±× Á¤µµÀÇ ÈûÀÌ »ý±â±â ÀÌÀü¿¡

ÀÌ¹Ì ÁöÃļ­ Çì¸ÅÁö ¾ÊÀ»±î ¿°·ÁµÈ´Ù.

ÇÊÀÚ´Â ¾Æ¿¹ 8088 ¸í·É¾î¸¦ ABC ¼ø¼­·Î ÇØ¼³Çϱâ·Î ÇÑ´Ù.

µ¿½Ã¿¡ »öÀÎÀ¸·Î °¢ ¸í·É¾î°¡ ¾î¶² ºÐ·ù¿¡ ¼ÓÇÏ´ÂÁö¸¦ ¿¬°á½ÃÄÑ µÎ°Ú´Ù.

¸ÕÀú ¸í·É¾î À̸§¸¸À¸·Î »öÀÎÀ»  Á¦°øÇϰí, À̾ °¢ ¸í·ÉÀÌ ¾î¶² ¸í·É

Á¾·ùÀÇ ¾î¶² ±×·ì¿¡ ¼ÓÇÏ´ÂÁö¸¦ ¸í½ÃÇÑ ´Ù¸¥ »öÀÎÀ» Á¦°øÇÑ´Ù.


<

¸í·É À̸§ »öÀÎ >

1.  AAA 2.  AAD

3.  AAM 4.

 AAS

5.  ADC 6.  ADD

7.  AND 8.

 CALL

9.  CBW 10. CLC

11. CLD 12.

CLI

13. CMC 14. CMP

15. CMPSB 16. CMPSW

17. CWD 18. DAA

19. DAS 20.

DEC

21. DIV 22. ESC

23. HLT 24.

IDIV

25. IMUL  26. IN

 27. INC 28.

INT

29. INTO  30. IRET

 31. JA  32.

JAE

33. JB  34. JBE

35. JC  36.

JCXZ

37. JE  38. JG

 39. JGE 40.

JL

41. JLE 42. JMP

43. JNA 44.

JNAE

45. JNB 46. JNBE

 47. JNC 48.

JNE

49. JNG 50. JNGE

 51. JNL 52.

JNLE

53. JNO 54. JNP

55. JNS 56.

JNZ

57. JO  58. JP

 59. JPE 60.

JPO

61. JS  62. JZ

 63. LAHF  64.

LDS

65. LEA 66. LES

67. LOCK  68.

LODSB

69. LODSW 70. LOOP

 71. LOOPE 72. LOOPNE

73. LOOPNZ  74. LOOPZ

75. MOV 76. MOVSB

77. MOVSW 78. MUL

79. NEG 80.

NOP

81. NOT 82. OR

 83. OUT 84.

POP

85. POPF  86. PUSH

 87. PUSHF 88. RCL

89. RCR 90. REP

91. REPE  92.

REPNE

93. REPNZ 94. REPZ

 95. RET 96.

ROL

97. ROR 98. SAHF

 99. SAL 100.

 SAR

101.SBB 102.  SCASB

103.  SCASW 104.  SHL

105.SHR 106.  STC

107.  STD 108.

 STI

109.STOSB 110.  STOSW

111.  SUB 112.  TEST

113.WAIT  114.  XCHG

 115.  XLAT  116.  XOR






´ÙÀ½¿¡ ¼Ò°³ÇÒ ¸í·É ºÐ·ù »öÀÎÀº ´ÙÀ½ Àý(¸í·É¾î »ç¿ë¹ý ¿ä¾à)ÀÇ ³»¿ëÀ» Âü°íÇÒ

Çʿ䰡 ÀÖÀ» ¶§ ½±°Ô ã¾Æ º¼ ¼ö ÀÖµµ·Ï µµ¿òÀ» ÁÙ °ÍÀÌ´Ù.


<¸í·É

ºÐ·ù »öÀÎ>

1.  AAA 21(»ê¼ú ¿¬»ê

¸í·É-°¡»ê)

2.  AAD 24(»ê¼ú ¿¬»ê

¸í·É-Á¦»ê)

3.  AAM 23(»ê¼ú ¿¬»ê

¸í·É-½Â»ê)

4.  AAS 22(»ê¼ú ¿¬»ê

¸í·É-°¨»ê)

5.  ADC 21(»ê¼ú ¿¬»ê

¸í·É-°¡»ê)

6.  ADD 21(»ê¼ú ¿¬»ê

¸í·É-°¡»ê)

7.  AND 31(ºñÆ® Á¶ÀÛ

¸í·É-³í¸® ¿¬»ê)

8.  CALL  51(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-¹«Á¶°Ç Àü¼Û)

9.  CBW 24(»ê¼ú ¿¬»ê

¸í·É-Á¦»ê)

10. CLC 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

11. CLD 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

12. CLI 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

13. CMC 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

14. CMP 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

15. CMPSB 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

16. CMPSW 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

17. CWD 24(»ê¼ú ¿¬»ê ¸í·É-Á¦»ê)

18. DAA 21(»ê¼ú ¿¬»ê ¸í·É-°¡»ê)

19. DAS 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

20. DEC 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

21. DIV 24(»ê¼ú ¿¬»ê ¸í·É-Á¦»ê)

22. ESC 62(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-¿ÜºÎ µ¿±â Á¦¾î)

23. HLT 62(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-¿ÜºÎ µ¿±â Á¦¾î)

24. IDIV  24(»ê¼ú ¿¬»ê ¸í·É-Á¦»ê)

25. IMUL  23(»ê¼ú ¿¬»ê ¸í·É-½Â»ê)

26. IN  12(µ¥ÀÌÅÍ Àü¼Û

¸í·É-ÀÔÃâ·Â)

27. INC 21(»ê¼ú ¿¬»ê ¸í·É-°¡»ê)

28. INT 54(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-ÀÎÅÍ·´Æ®)

29. INTO  54(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-ÀÎÅÍ·´Æ®)

30. IRET  54(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-ÀÎÅÍ·´Æ®)

31. JA  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

32. JAE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

33. JB  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

34. JBE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

35. JC  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

36. JCXZ  53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹

Á¦¾î)

37. JE  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

38. JG  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

39. JGE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

40. JL  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

41. JLE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

42. JMP 51(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-¹«Á¶°Ç Àü¼Û)

43. JNA 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

44. JNAE  52(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-Á¶°ÇºÎ

Àü¼Û)

45. JNB 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

46. JNBE  52(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-Á¶°ÇºÎ

Àü¼Û)

47. JNC 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

48. JNE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

49. JNG 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

50. JNGE  52(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-Á¶°ÇºÎ

Àü¼Û)

51. JNL 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

52. JNLE  52(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-Á¶°ÇºÎ

Àü¼Û)

53. JNO 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

54. JNP 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

55. JNS 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

56. JNZ 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

57. JO  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

58. JP  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

59. JPE 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

60. JPO 52(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-Á¶°ÇºÎ Àü¼Û)

61. JS  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

62. JZ  52(ÇÁ·Î±×·¥

Àü¼Û ¸í·É-Á¶°ÇºÎ Àü¼Û)

63. LAHF  14(µ¥ÀÌÅÍ Àü¼Û ¸í·É-Ç÷¡±×

Àü¼Û)

64. LDS 13(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¾îµå·¹½º

Àü¼Û)

65. LEA 13(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¾îµå·¹½º

Àü¼Û)

66. LES 13(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¾îµå·¹½º

Àü¼Û)

67. LOCK  62(ÇÁ·Î¼¼¼­ Á¦¾î ¸í·É-¿ÜºÎ

µ¿±â Á¦¾î)

68. LODSB 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

69. LODSW 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

70. LOOP  53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹

Á¦¾î)

71. LOOPE 53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹

Á¦¾î)

72. LOOPNE  53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹ Á¦¾î)

73. LOOPNZ  53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹ Á¦¾î)

74. LOOPZ 53(ÇÁ·Î±×·¥ Àü¼Û ¸í·É-¹Ýº¹

Á¦¾î)

75. MOV 11(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¹ü¿ë

µ¥ÀÌÅÍ Àü¼Û)

76. MOVSB 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

77. MOVSW 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

78. MUL 23(»ê¼ú ¿¬»ê ¸í·É-½Â»ê)

79. NEG 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

80. NOP 63(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-No Operation)

81. NOT 31(ºñÆ® Á¶ÀÛ ¸í·É-³í¸®

¿¬»ê)

82. OR  31(ºñÆ® Á¶ÀÛ

¸í·É-³í¸® ¿¬»ê)

83. OUT 12(µ¥ÀÌÅÍ Àü¼Û ¸í·É-ÀÔÃâ·Â)

84. POP 11(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¹ü¿ë

µ¥ÀÌÅÍ Àü¼Û)

85. POPF  14(µ¥ÀÌÅÍ Àü¼Û ¸í·É-Ç÷¡±×

Àü¼Û)

86. PUSH  11(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¹ü¿ë

µ¥ÀÌÅÍ Àü¼Û)

87. PUSHF 14(µ¥ÀÌÅÍ Àü¼Û ¸í·É-Ç÷¡±×

Àü¼Û)

88. RCL 33(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

ȸÀü)

89. RCR 33(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

ȸÀü)

90. REP 41(½ºÆ®¸µ ¸í·É-Repeat

Prefix)

91. REPE  41(½ºÆ®¸µ ¸í·É-Repeat

Prefix)

92. REPNE 41(½ºÆ®¸µ ¸í·É-Repeat Prefix)

93. REPNZ 41(½ºÆ®¸µ ¸í·É-Repeat Prefix)

94. REPZ  41(½ºÆ®¸µ ¸í·É-Repeat

Prefix)

95. RET 51(ÇÁ·Î±×·¥ Àü¼Û

¸í·É-¹«Á¶°Ç Àü¼Û)

96. ROL 33(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

ȸÀü)

97. ROR 33(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

ȸÀü)

98. SAHF  14(µ¥ÀÌÅÍ Àü¼Û ¸í·É-Ç÷¡±×

Àü¼Û)

99. SAL 32(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

À̵¿)

100.SAR 32(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

À̵¿)

101.SBB 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

102.SCASB 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

103.SCASW 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

104.SHL 32(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

À̵¿)

105.SHR 32(ºñÆ® Á¶ÀÛ ¸í·É-ºñÆ®

À̵¿)

106.STC 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

107.STD 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

108.STI 61(ÇÁ·Î¼¼¼­ Á¦¾î

¸í·É-Ç÷¡±× Á¦¾î)

109.STOSB 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

110.STOSW 42(½ºÆ®¸µ ¸í·É-ºí·Ï µ¥ÀÌÅÍ

ó¸®)

111.SUB 22(»ê¼ú ¿¬»ê ¸í·É-°¨»ê)

112.TEST  31(ºñÆ® Á¶ÀÛ ¸í·É-³í¸®

¿¬»ê)

113.WAIT  62(ÇÁ·Î¼¼¼­ Á¦¾î ¸í·É-¿ÜºÎ

µ¿±â Á¦¾î)

114.XCHG  11(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¹ü¿ë

µ¥ÀÌÅÍ Àü¼Û)

115.XLAT  11(µ¥ÀÌÅÍ Àü¼Û ¸í·É-¹ü¿ë

µ¥ÀÌÅÍ Àü¼Û)

116.XOR 31(ºñÆ® Á¶ÀÛ ¸í·É-³í¸®

¿¬»ê)






Á¦ 4 Àý  ¸í·É¾î »ç¿ë¹ý ¿ä¾à

´ÙÀ½ ÀåÀ¸·ÎºÎÅÍ 8088 ¸í·É¾î¸¦ ABC ¼ø¼­·Î ÇØ¼³Çϱâ·Î ÇÑ´Ù.

±×·¯³ª ¸í·É¾î »ç¿ë¹ýÀ» ¾î´À Á¤µµ  ¾Ë°í ³ª¸é, °¡²û ¾î¶² ¿ëµµ¿¡ »ç¿ëÇÒ

¼ö ÀÖ´Â ¸í·É¾îÀÇ À̸§ÀÌ »ý°¢³ªÁö ¾Ê¾Æ¼­ ã¾Æ º¸±â ¾î·Á¿î °æ¿ìµµ ÀÖÀ» °ÍÀÌ´Ù.

±× ¶§ ÀÌ ÀýÀÇ ¸í·É¾î »ç¿ë¹ý ¿ä¾à ¼³¸íÀ» Âü°íÇÏ¸é ½Ã°£À» ¾Æ³¥ ¼ö ÀÖ´Ù.

ÀÌÇÏ °¢ ¸í·É¾îÀÇ ¿ÀÆÛ·£µå ¾à¾îÀÇ ¶æÀº ´ÙÀ½°ú °°´Ù.


acc(accumulator)  : ¾îÅ¥¹Ä·¹ÀÌÆ®¸¦

ÅëĪÇÔ, °æ¿ì¿¡ µû¶ó AL, AX

count : Ä«¿îÅÍ(counter),

°æ¿ì¿¡ µû¶ó 1 ¶Ç´Â CL ·¹Áö½ºÅÍ

d(destination)  : ¸ñÀû

¿ÀÆÛ·£µå(operand)¸¦ ÅëĪÇÔ

disp8 : 8ºñÆ®

displacement

disp16  : 16ºñÆ® displacement

imm8  :

8ºñÆ® ÁïÄ¡(immediate) µ¥ÀÌÅÍ

imm16 : 16ºñÆ®

ÁïÄ¡(immediate) µ¥ÀÌÅÍ

label : ½ÇÇàÀÌ

³Ñ¾î°¥ Ç¥Àû(target)ÀÌ µÇ´Â Ç¥Áö(label)

mem8  :

8ºñÆ® µ¥ÀÌÅͰ¡ ÀúÀåµÈ ¸Þ¸ð¸® À§Ä¡(location)

mem16 : 16ºñÆ®

µ¥ÀÌÅͰ¡ ÀúÀåµÈ ¸Þ¸ð¸® À§Ä¡(location)

mem32 : 32ºñÆ®

µ¥ÀÌÅͰ¡ ÀúÀåµÈ ¸Þ¸ð¸® À§Ä¡(location)

operation : ¾î¼Àºí¸® ¸í·ÉÀÇ mnemonic

code

port  :

ÀÔÃâ·Â Æ÷Æ®(I/O port)

reg8  :

8ºñÆ® ¹ü¿ë µ¥ÀÌÅÍ ·¹Áö½ºÅÍ(AH,AL,BH,BL,CH,CL,DH,DL)

reg16 : 16ºñÆ®

¹ü¿ë ·¹Áö½ºÅÍ(AX,BX,CX,DX,SP,BP,SI,DI)

s(source) : ¿øº»(source) ¿ÀÆÛ·£µå¸¦ ÅëĪÇÔ

seg :

¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ

type  :

¼ÒÇÁÆ®¿þ¾î ÀÎÅÍ·´Æ®ÀÇ Å¸ÀÔ(00h ³»Áö FFh)


ÀÔÃâ·Â Æ÷Æ® Ç¥½Ã¿¡´Â 8ºñÆ® ÁïÄ¡ µ¥ÀÌÅÍ ¶Ç´Â DX ·¹Áö½ºÅͰ¡ »ç¿ëµÈ´Ù.

¿ÀÆÛ·¹ÀÌ¼Ç ¸í·ÉÀÇ ´Ï¸ð´Ð  ÄÚµå·Î prefix ¸í·É¿¡¼­´Â 8088/8086ÀÇ ¸í·ÉÀ»

»ç¿ëÇϰí, ESC ¸í·É¿¡¼­´Â 8087/8089ÀÇ ¸í·ÉÀ» »ç¿ëÇÑ´Ù.

·¹À̺í(label)Àº call, jmp, loop µî ¸í·ÉÀÇ Ç¥Àû(target)ÀÌ µÈ´Ù.

dssp8, disp16Àº Çü½ÄÀ¸·Î º¸¸é ·¹À̺íÀÌÁö¸¸ ±â°è¾î ÄÚµå·Î´Â 8ºñÆ®/16ºñÆ® ÁïÄ¡

µ¥ÀÌÅͰ¡ µÇ¾î 2ÀÇ º¸¼ö(2's complement)·Î Ç¥ÇöµÇ¾î -128 ³»Áö +127/-32768 ³»Áö

+32767 ¹üÀ§ÀÇ °ªÀ» °¡Áö°Ô µÈ´Ù.

¾à¾î¸¦ ¾Ë ¼ö ¾øÀ¸¸é ABC ¼ø¼­·Î »¡¸® ã¾Æ º¸°í Âü°íÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.






1. µ¥ÀÌÅÍ Àü¼Û ¸í·É

8088ÀÇ µ¥ÀÌÅÍ Àü¼Û ¸í·É(Data Transfer Instruction)Àº ·¹Áö½ºÅÍ, ¸Þ¸ð¸®, I/O

Æ÷Æ®(port) »çÀÌ¿¡¼­ µ¥ÀÌÅ͸¦ Àü¼ÛÇϱâ À§ÇÑ ¸í·ÉÀ¸·Î 14°³°¡ ÀÖ´Ù.


1) ¹ü¿ë µ¥ÀÌÅÍ Àü¼Û ¸í·É(General Purpose Data Transfer)

MOV d,s : sÀÇ ¹ÙÀÌÆ®³ª ¿öµå¸¦

d·Î Àü¼Û(º¹»ç)

XCHG  d,s : s¿Í dÀÇ ¹ÙÀÌÆ®, ¶Ç´Â

s¿Í dÀÇ ¿öµå¸¦ ¸Â¹Ù²Þ(±³È¯)

PUSH  s : ¿öµå ÁÖ¼Ò¸¦

½ºÅÿ¡ ÀúÀå

POP d : ½ºÅÿ¡

ÀúÀåµÈ ¿öµå ÁÖ¼Ò¸¦ º¹±¸

XLAT  :

(BX+AL)·Î Ç¥½ÃµÇ´Â ¸Þ¸ð¸® ¹øÁöÀÇ ³»¿ëÀ» AL·Î Àü¼Û


     ## Ȱ¿ë ÆÁ

    push, pop ¸í·ÉÀº Ç×»ó ¿öµå(16ºñÆ®) µ¥ÀÌÅ͸¸À» ÀúÀå, º¹±¸ÇÑ´Ù. Ç÷¡±×

    ·¹Áö½ºÅÍÀÇ ÀúÀå°ú º¹±¸´Â Ç÷¡±× Àü¼Û ¸í·ÉÀ» Âü°íÇ϶ó.



2) ÀÔÃâ·Â ¸í·É(Input/Output)

IN  acc,port  :

ÁöÁ¤µÈ Æ÷Æ®¿¡¼­ ¹ÙÀÌÆ®/¿öµå µ¥ÀÌÅ͸¦ AX¿¡ Àü¼Û

OUT port,acc  :

AL/AXÀÇ ¹ÙÀÌÆ®/¿öµå µ¥ÀÌÅ͸¦ ÁöÁ¤µÈ Æ÷Æ®·Î Ãâ·Â


3) ¾îµå·¹½º Àü¼Û ¸í·É(Address Object Transfer)

LEA reg16,s(mem16)

: sÀÇ EA(¿ÀÇÁ¼Â, À¯È¿ ÁÖ¼Ò)¸¦

·¹Áö½ºÅÍ·Î Àü¼Û

LDS reg16,s(mem32)

: sÀÇ 32ºñÆ® µ¥ÀÌÅÍ  Áß

ÇÏÀ§ ¿öµå´Â reg16À¸·Î ÁöÁ¤µÈ 16ºñÆ® ·¹Áö½º

ÅÍ·Î Àü¼ÛÇϰí,

»óÀ§ ¿öµå´Â DS ·¹Áö½ºÅÍ·Î Àü¼Û

LES reg16,s(mem32)

: sÀÇ 32ºñÆ® µ¥ÀÌÅÍ  Áß

ÇÏÀ§ ¿öµå´Â reg16À¸·Î ÁöÁ¤µÈ 16ºñÆ® ·¹Áö½º

ÅÍ·Î Àü¼ÛÇϰí,

»óÀ§ ¿öµå´Â ES ·¹Áö½ºÅÍ·Î Àü¼Û


4) Ç÷¡±× Àü¼Û ¸í·É(Flag Transfer)

LAHF  : Ç÷¡±×ÀÇ ÇÏÀ§ ¹ÙÀÌÆ®¸¦ AH ·¹Áö½ºÅÍ·Î Àü¼Û

SAHF  : AH ·¹Áö½ºÅÍ µ¥ÀÌÅ͸¦ Ç÷¡±×ÀÇ ÇÏÀ§ ¹ÙÀÌÆ®¿¡ ÀúÀå

PUSHF : Ç÷¡±× ·¹Áö½ºÅÍ µ¥ÀÌÅ͸¦ ½ºÅÿ¡ ÀúÀå

POPF  : ½ºÅà µ¥ÀÌÅ͸¦ Ç÷¡±× ·¹Áö½ºÅÍ·Î º¹±¸






2. »ê¼ú ¿¬»ê ¸í·É

8088ÀÇ »ê¼ú ¿¬»ê ¸í·É(Arithmetic Instruction)¿¡´Â µ¡¼À, »¬¼À, °ö¼À, ³ª´°¼À

ÀÇ »çÄ¢¿¬»êÀ» ¼öÇàÇϱâ À§ÇÑ 20°³ÀÇ ¸í·ÉÀÌ ÀÖ´Ù.


1) °¡»ê ¸í·É(Addition)

ADD d,s : ¹ÙÀÌÆ®/¿öµå ´ÜÀ§·Î

(d+s)¸¦ d¿¡ ÀúÀå

ADC d,s : ¹ÙÀÌÆ®/¿öµå ´ÜÀ§·Î

(d+s+CF)¸¦ d¿¡ ÀúÀå

INC d : ¹ÙÀÌÆ®/¿öµå

µ¥ÀÌÅ͸¦ 1¸¸Å­ Áõ°¡½ÃÅ´

AAA :

ALÀ» unpacked BCD·Î º¯È¯

DAA :

ALÀ» packed BCD·Î º¯È¯


     ## Ȱ¿ë ÆÁ

    Ä³¸® Ç÷¡±×´Â 0,1 Áß  ÇϳªÀ̹ǷΠadc ¸í·ÉÀÇ °á°ú´Â add ¸í·ÉÀÇ °á°ú¿Í

    °°°Å³ª 1¸¸Å­ Â÷À̰¡ ³¯ °ÍÀÌ´Ù.



2) °¨»ê ¸í·É(Subtraction)

SUB d,s : ¹ÙÀÌÆ®/¿öµå ´ÜÀ§·Î

(d-s)¸¦ d¿¡ ÀúÀå

SBB d,s : ¹ÙÀÌÆ®/¿öµå ´ÜÀ§·Î

(d-s-CF)¸¦ d¿¡ ÀúÀå

DEC d : ¹ÙÀÌÆ®/¿öµå

µ¥ÀÌÅ͸¦ 1¸¸Å­ °¨¼Ò

NEG d : 2ÀÇ º¸¼ö

°è»ê(0-d)À¸·Î ºÎÈ£ ÀÖ´Â ¼öÀÇ ºÎÈ£¸¦ ¹Ù²Û´Ù

CMP d,s : (d-s)ÀÇ °è»ê °á°ú

»óŸ¸À» Ç÷¡±× ·¹Áö½ºÅÍ¿¡ ÀúÀå

AAS :

ALÀ» Þª¹ÐÁýÇü(unpacked) BCD·Î º¯È¯

DAS :

ALÀ» ÚËó¢û¡(packed) BCD·Î º¯È¯

cmp ¸í·ÉÀº »ê¼úÀû ºñ±³¿¡ ¾²À̸ç, ³í¸®Àû ºñ±³ ¸í·ÉÀº testÀÌ´Ù.


     ## Ȱ¿ë ÆÁ

    Ä³¸® Ç÷¡±×´Â 0,1 Áß  ÇϳªÀ̹ǷΠsbb ¸í·ÉÀÇ °á°ú´Â sub ¸í·ÉÀÇ °á°ú¿Í

    °°°Å³ª 1¸¸Å­ Â÷À̰¡ ³¯ °ÍÀÌ´Ù.







3) ½Â»ê ¸í·É(Multiplication)

MUL s : ¾îÅ¥¹Ä·¹ÀÌÅÍ¿Í

¼Ò½º¸¦ ºÎÈ£ ¾ø´Â ¼ö·Î °£ÁÖÇÏ°í °öÇÑ´Ù.

IMUL  s : ¾îÅ¥¹Ä·¹ÀÌÅÍ¿Í

¼Ò½º¸¦ ºÎÈ£ ÀÖ´Â ¼ö·Î °£ÁÖÇÏ°í °öÇÑ´Ù.

AAM :

ALÀ» unpacked BCD·Î º¯È¯


     ## Ȱ¿ë ÆÁ

    mul, imul ¸í·É¿¡¼­ ¹ÙÀÌÆ® ´ÜÀ§ÀÇ °ö¼ÀÀº AL*source=AX(AH,AL)°ú °°ÀÌ °ö¼À

    °á°ú°¡ AX ·¹Áö½ºÅÍ¿¡ ÀúÀåµÇ°í, ¿öµå ´ÜÀ§ÀÇ °ö¼ÀÀº AX*sourceÀÇ °á°ú °ªÀ»

    DX, AX ·¹Áö½ºÅÍ¿¡ ÀúÀåÇÏ°Ô µÈ´Ù.



4) Á¦»ê ¸í·É(Division)

DIV s : ¾îÅ¥¹Ä·¹ÀÌÅÍ¿¡¼­

¼Ò½º¸¦ ºÎÈ£ ¾ø´Â ¼ö·Î °£ÁÖÇÏ°í ³ª´«´Ù.

IDIV  s : ¾îÅ¥¹Ä·¹ÀÌÅÍ¿¡¼­

¼Ò½º¸¦ ºÎÈ£ ÀÖ´Â ¼ö·Î °£ÁÖÇÏ°í ³ª´«´Ù.

AAD :

AXÀÇ unpacked BCD µ¥ÀÌÅ͸¦ 2Áø¼ö·Î º¯È¯ÇÏ¿© AL¿¡ ÀúÀå

CBW :

AL ·¹Áö½ºÅÍÀÇ ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ AX ¿öµå µ¥ÀÌÅÍ·Î È®Àå

CWD :

AX ¿öµå µ¥ÀÌÅ͸¦ DX:AX ´õºí ¿öµå µ¥ÀÌÅÍ·Î È®Àå






3. ºñÆ® Á¶ÀÛ ¸í·É

8088ÀÇ ºñÆ® Á¶ÀÛ ¸í·É(Bit Manipulation Instruction)Àº ³í¸® ¿¬»ê ¸í·É, ºñÆ®

À̵¿(½ÃÇÁÆ®) ¸í·É, ºñÆ® ȸÀü(·ÎÅ×ÀÌÆ®) ¸í·É µî 12°³°¡ ÀÖ´Ù.


1) ³í¸® ¿¬»ê ¸í·É(Logical)

NOT d : °¢ ºñÆ®ÀÇ

1Àº 0À¸·Î, 0Àº 1·Î ¹Ù²Ù¾î 1ÀÇ º¸¼ö¸¦ ¸¸µç´Ù.

AND d,s : (d and s) Áï ³í¸®°ö(and)À»

±¸ÇÏ¿© d¿¡ ÀúÀå

OR  d,s : (d or s) Áï

³í¸®ÇÕ(or)À» ±¸ÇÏ¿© d¿¡ ÀúÀå

XOR d,s : (d xor s) Áï ¹èŸÀû

³í¸®ÇÕ(xor)À» ±¸ÇÏ¿© d¿¡ ÀúÀå

TEST  d,s : ³í¸®°ö(d and s)ÀÇ °á°ú

»óŸ¸À» Ç÷¡±× ·¹Áö½ºÅÍ¿¡ ÀúÀå


2) ºñÆ® À̵¿ ¸í·É(Shift)

SHL d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿ÞÂÊÀ¸·Î À̵¿

SAL d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿ÞÂÊÀ¸·Î À̵¿

SHR d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿À¸¥ÂÊÀ¸·Î À̵¿

SAR d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿À¸¥ÂÊÀ¸·Î À̵¿


     ## Ȱ¿ë ÆÁ

    ¿ÞÂÊ ½ÃÇÁÆ® ¸í·ÉÀº  µÑ ´Ù ºÎÈ£¸¦ °í·ÁÇÏÁö  ¾ÊÀ¸¹Ç·Î shl ¸í·É°ú

    sal ¸í·ÉÀº ÀüÇô µ¿ÀÏÇÏ´Ù. ±×·¯³ª, ¿À¸¥ÂÊ ½ÃÇÁÆ® ¸í·É Áß¿¡¼­ shr ¸í·ÉÀººÎÈ£¸¦

    °í·ÁÇÏÁö ¾Ê´Â ¹Ý¸é sar ¸í·ÉÀº ºÎÈ£¸¦ °í·ÁÇÏ´Â Â÷À̰¡ ÀÖ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº

    °¢ ¸í·É ÇØ¼³À» Âü°íÇϱ⠹ٶõ´Ù.







3) ºñÆ® ȸÀü ¸í·É(Rotate)

ROL d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿ÞÂÊÀ¸·Î ȸÀü

ROR d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿À¸¥ÂÊÀ¸·Î ȸÀü

RCL d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿ÞÂÊÀ¸·Î ȸÀü

RCR d,count : ¹ÙÀÌÆ®/¿öµåÀÇ °¢ ºñÆ®¸¦ count ºñÆ®¸¸Å­

¿À¸¥ÂÊÀ¸·Î ȸÀü


     ## Ȱ¿ë ÆÁ

    ºñÆ® À̵¿ÀÇ °á°ú ¹Ð·Á³­  ºñÆ®´Â ¿ø·¡ µ¥ÀÌÅÍ·Î µÇµ¹¾Æ¿ÀÁö ¸øÇÏ´Â

    ¹Ý¸é ºñÆ® ȸÀü¿¡¼­´Â ±×°ÍÀÌ ¿ø·¡ µ¥ÀÌÅÍ·Î µÇµ¹¾Æ¿À´Â Á¡ÀÌ ´Ù¸£´Ù.




     ## Ȱ¿ë ÆÁ

    rcl, rcr ¸í·ÉÀº ij¸®  Ç÷¡±×µµ ¼øÈ¯ °í¸®¿¡ ÇÑ ÀÚ¸®¸¦ Â÷ÁöÇÑ´Ù´Â

    Á¡ÀÌ rol, ror ¸í·É°ú ´Ù¸£´Ù. Áï rol, ror ¸í·ÉÀ» »ç¿ëÇϸé ȸÀüÀ¸·Î ¹Ð·Á³­

    ºñÆ®°¡ ¹Ù·Î ¹Ý´ëÆí  ºñÆ®·Î ÀúÀåµÇÁö¸¸, rcl, rcr ¸í·ÉÀ» »ç¿ëÇÏ´Â °æ¿ì¿¡´Â

    ±× ºñÆ®°¡  Ä³¸® Ç÷¡±×¿¡ ÀúÀåµÇ¾ú´Ù°¡ ´ÙÀ½ ºñÆ®ÀÇ È¸Àü¿¡¼­ ¹Ý´ëÆí ºñÆ®¸¦

    Ã¤¿ì°Ô µÈ´Ù´Â »ç½ÇÀ» ÀÌÇØÇÏ¸é µÉ °ÍÀÌ´Ù.







4. ½ºÆ®¸µ ¸í·É

½ºÆ®¸µ ¸í·É(String Instruction)Àº ¹Ýº¹Ã³¸® Á¢µÎ¾î(repeat prefix) ¹× µ¥ÀÌÅÍÀÇ

ºí·Ï Àü¼Û(move), ºñ±³(compare), °Ë»ö(scan)¿¡ °üÇÑ ¸í·ÉÀ¸·Î 7°³°¡ ÀÖ´Ù.


1) Repeat Prefix ¸í·É

REP opcode  : OP ÄÚµå(MOVS, STOS)¸¦ CX ȸ¼ö

¹Ýº¹ ½ÇÇà

REPE  opcode  : OP ÄÚµå(CMPS, SCAS)¸¦ ZF=1ÀÎ µ¿¾È CX

ȸ¼ö ¹Ýº¹ ½ÇÇà

REPZ  opcode  : OP ÄÚµå(CMPS, SCAS)¸¦ ZF=1ÀÎ µ¿¾È CX

ȸ¼ö ¹Ýº¹ ½ÇÇà

REPNE opcode  : OP ÄÚµå(CMPS, SCAS)¸¦ ZF=0ÀÎ µ¿¾È CX ȸ¼ö

¹Ýº¹ ½ÇÇà

REPNZ opcode  : OP ÄÚµå(CMPS, SCAS)¸¦ ZF=0ÀÎ µ¿¾È CX ȸ¼ö

¹Ýº¹ ½ÇÇà

rep´Â ¹«Á¶°Ç ¸í·ÉÀÌÁö¸¸, ³ª¸ÓÁö´Â ij¸® Ç÷¡±×¸¦ ÂüÁ¶ÇÏ´Â Á¶°ÇºÎ ¸í·ÉÀÌ´Ù.

Repeat Prefix ¸í·ÉÀº µ¶¸³ÇÏ¿©  »ç¿ëµÉ ¼ö´Â ¾øÀ¸¸ç, µÚ¿¡ µû¶ó ³ª¿À´Â

¸í·ÉÀ» ¹«Á¶°Ç ¶Ç´Â Á¶°ÇºÎ·Î CX ·¹Áö½ºÅÍ¿¡ ÀúÀåµÈ ȸ¼ö¸¸Å­ ¹Ýº¹ ½ÇÇàÇÏ°Ô ¸¸µå´Â

°ÍÀ̹ǷΠÀÏÁ¾ÀÇ ¸í·É Á¢µÎ¾î ¿ªÇÒÀ» ÇÏ´Â °ÍÀÓÀ» ÀÌÇØÇÒ Çʿ䰡 ÀÖ´Ù.



     ## Ȱ¿ë ÆÁ

    ¾Æ¹« ¸í·É ¾Õ¿¡³ª rep(e, z, ne, nz)¸¦ ºÙ¿©¼­´Â ¾È µÈ´Ù.







2) ºí·Ï µ¥ÀÌÅÍ Ã³¸® ¸í·É

µ¥ÀÌÅ͸¦ ¹ÙÀÌÆ® ºí·Ï ¶Ç´Â ¿öµå ºí·Ï ´ÜÀ§·Î Àü¼Û, ºñ±³ÇÏ´Â ºí·Ï µ¥ÀÌÅÍ Ã³¸®

¸í·ÉÀÇ À̸§¿¡¼­ ³¡ÀÇ s´Â ½ºÆ®¸µ(String)À» Ç¥½ÃÇϸç, b´Â ¹ÙÀÌÆ®, w´Â ¿öµå¸¦ ³ªÅ¸³½´Ù´Â

»ç½ÇÀ» ÀÌÇØÇÏ°í º¸¸é °£´ÜÇØÁú °ÍÀÌ´Ù.

MOVSB : DS:SI¿¡ ÀúÀåµÈ ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ ES:DI·Î Àü¼Û

MOVSW : DS:SI¿¡ ÀúÀåµÈ ¿öµå µ¥ÀÌÅ͸¦ ES:DI·Î Àü¼Û

CMPSB : (DS:SI - ES:DI)·Î ºñ±³ÇÑ °á°ú »óŸ¦ Ç÷¡±× ·¹Áö½ºÅÍ¿¡

ÀúÀå

CMPSW : (DS:SI - ES:DI)·Î ºñ±³ÇÑ °á°ú »óŸ¦ Ç÷¡±× ·¹Áö½ºÅÍ¿¡

ÀúÀå

SCASB : (accumulator - ES:DI) ºñ±³ °á°ú »óŸ¦ Ç÷¡±× ·¹Áö½ºÅÍ¿¡

ÀúÀå

SCASW : (accumulator - ES:DI) ºñ±³ °á°ú »óŸ¦ Ç÷¡±× ·¹Áö½ºÅÍ¿¡

ÀúÀå

LODSB : DS:SI¿¡ ÀúÀåµÈ ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ ¾îÅ¥¹Ä·¹ÀÌÆ®·Î Àü¼Û

LODSW : DS:SI¿¡ ÀúÀåµÈ ¿öµå µ¥ÀÌÅ͸¦ ¾îÅ¥¹Ä·¹ÀÌÆ®·Î Àü¼Û

STOSB : ¾îÅ¥¹Ä·¹ÀÌÆ®ÀÇ ¹ÙÀÌÆ® µ¥ÀÌÅ͸¦ ES:DI·Î Àü¼Û

STOSW : ¾îÅ¥¹Ä·¹ÀÌÆ®ÀÇ ¿öµå µ¥ÀÌÅ͸¦ ES:DI·Î Àü¼Û


     ## ÁÖÀÇ


cmpsb/cmpsw ¸í·ÉÀº ¼Ò½º ¿ÀÆÛ·£µå¿¡¼­ ¸ñÀû ¿ÀÆÛ·£µå¸¦ »©´Â ¹æ½ÄÀ¸·Î µÎ µ¥ÀÌÅ͸¦

ºñ±³Çϱ⠶§¹®¿¡,  ±× ºñ±³ ¿¬»ê ¹æÇâÀÌ cmp ¸í·É¿¡¼­ (¸ñÀû-¼Ò½º)·Î ºñ±³ÇÏ´Â

°Í°ú Á¤¹Ý´ëÀÓÀ» ÁÖÀÇÇÏÀÚ.



     ## Ȱ¿ë ÆÁ

    °¢ ¸í·É¿¡¼­ ¹ÙÀÌÆ®/¿öµå¸¦ Ç¥½ÃÇÏ´Â  b, w¸¦ ºÙÀÌÁö ¾Ê°í movs,

    cmps, scas, lods, stos¿Í °°ÀÌ ¸í·ÉÇϸé ó¸®ÇÒ µ¥ÀÌÅͰ¡ ¹ÙÀÌÆ® µ¥ÀÌÅÍÀÎÁö

    ¿öµå µ¥ÀÌÅÍÀÎÁö¸¦ ¾î¼Àºí·¯°¡  ¾Ë¾Æ¼­ ÆÇ´ÜÇÏ°í ¹ÙÀÌÆ® ¸í·É, ¿öµå ¸í·ÉÀ¸·Î

    ¹ø¿ªÇÏ¿© ÁØ´Ù.







5. ÇÁ·Î±×·¥ Àü¼Û ¸í·É

ÇÁ·Î±×·¥ Àü¼Û ¸í·É(Program Transfer  Instruction)Àº IP ¹× CSÀÇ ³»¿ëÀ»

º¯È­½ÃÄÑ ÇÁ·Î±×·¥ÀÇ È帧À» º¯°æÇÏ´Â °ÍÀ¸·Î 26°³ÀÇ ¸í·ÉÀÌ ÀÖ´Ù.


1) ¹«Á¶°Ç Àü¼Û ¸í·É(Unconditional Transfer)

JMP label : ÁöÁ¤µÈ ·¹À̺í À§Ä¡·Î À̵¿

CALL  label : ºÎÇÁ·Î±×·¥(procedure, subroutine)À»

È£Ãâ

RET imm16 : ºÎÇÁ·Î±×·¥(procedure, subroutine)¿¡¼­

º¹±Í


     ## Ȱ¿ë ÆÁ

    ret  ¸í·É¿¡ imm16  ¿ÀÆÛ·£µå¸¦ ºÙÀÌ¸é  ¼­ºê·çƾ¿¡¼­ º¹±ÍÇÑ

     ÈÄ SP¸¦ imm16¸¸Å­ Áõ°¡½ÃŲ´Ù.



2) Á¶°ÇºÎ Àü¼Û ¸í·É(Conditional Transfer)

Á¶°ÇºÎ Àü¼Û ¸í·ÉÀº ¸ðµÎ µ¿ÀÏÇÏ°Ô disp8(8ºñÆ® displacement)¸¦ ÇϳªÀÇ ¿ÀÆÛ·£

µå·Î ÃëÇÏ¿© IP+disp8À» »õ·Î¿î IP·Î ¹Ù²Ù¸ç, µû¶ó¼­ »ó´ë ÁÖ¼Ò -128 ³»Áö +127


¹üÀ§ ³»¿¡ Á¸ÀçÇÏ´Â ·¹À̺í·Î ºÐ±âÇÏ´Â short jump ¸í·ÉÀÌ´Ù.






 ## Ȱ¿ë ÆÁ

¾î¼Àºí¸®¾î·Î ¼Ò½º¸¦ ¸¸µé ¶§´Â ·¹À̺í À̸§À» ÀÔ·ÂÇϸé

µÉ °ÍÀÌ´Ù.

Á¶°ÇºÎ Àü¼Û ¸í·ÉÀº °³¼ö°¡ ¸¹¾Æ  Ã³À½ ´ëÇÒ ¶§ È¥¶õ½º·´°Ô ´À²¸Áú ¿ì·Á°¡

ÀÖ±â´Â ÇÏÁö¸¸, °°Àº Àǹ̷Π¾²ÀÌ´Â µ¿ÀÏÇÑ ¸í·É¾î¸¦ ÇÕÄ¡±â¸¸ ÇØµµ °ÅÀÇ Àý¹Ý Á¤µµ·Î

ÁÙ¾îÁö¸ç, ±× ÈÄ¿¡ Àß »ìÆì º¸¸é °£´ÜÇÏ°Ô 2°¡Áö ºÎ·ù·Î ³ª´©¾îÁø´Ù.

ù°, µÎ µ¥ÀÌÅÍÀÇ ºñ±³ °á°ú¸¦ Á¶°ÇÀ¸·Î Àü¼Û ¿©ºÎ

°áÁ¤

µÑ°, OF, SF, PFÀÇ °ªÀÌ 1ÀÎÁö 0ÀÎÁö¸¦ Á¶°ÇÀ¸·Î Àü¼Û

¿©ºÎ °áÁ¤

µÎ µ¥ÀÌÅÍÀÇ ºñ±³ °á°ú´Â Å©´Ù ¶Ç´Â ¸¹´Ù, ÀÛ´Ù ¶Ç´Â Àû´Ù, °°´Ù µî 3°¡ÁöÀÇ ±âº»

Á¶°ÇÀ» Çü¼ºÇÑ´Ù. ±× ¿Ü¿¡ ÀÛÁö ¾Ê´Ù ¶Ç´Â ÀûÁö ¾Ê´Ù(ÀÌ»ó), Å©Áö ¾Ê´Ù ¶Ç´Â ¸¹Áö

¾Ê´Ù(ÀÌÇÏ) µî 2°¡ÁöÀÇ º¹ÇÕ Á¶°ÇÀÌ Ãß°¡µÈ Á¤µµÀÌ´Ù.

Å©´Ù(¸¹´Ù)  |

+-------------

 ÀÛÁö(ÀûÁö) ¾Ê´Ù

°°´Ù  |

|

+-----

 Å©Áö(¸¹Áö) ¾Ê´Ù

ÀÛ´Ù(Àû´Ù)  |

±×¸®°í ¸ðµç ¸í·ÉÀÇ Ã¹ ±ÛÀÚ´Â  jumpÀÇ j¸¦ µû¼­ ºÙÀÎ °ÍÀ̸ç, ÀÚÁÖ º¸ÀÌ´Â

nÀº no ¶Ç´Â not¸¦ Ç¥½ÃÇϰí,  ±× ³ª¸ÓÁö ±ÛÀÚµéÀº a(bove), b(elow), e(qual)

µî°ú g(reater), l(ess) µîÀÇ ºñ±³ °á°ú Ç¥½Ã ¹× c(arry), z(ero), o(verflow) µî

Ç÷¡±× »óŸ¦ Ç¥½ÃÇÏ´Â ´Ü¾îÀÇ Ã¹ ±ÛÀÚµé·Î Á¶ÇյǾî ÀÖ´Ù.

ÀÌ Á¤µµ¸¸ ÀÌÇØÇÏ°í º¸¸é º°·Î ¾î·ÆÁö ¾Ê°Ô ÀÌÇØÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

Á» ´õ º¸±â ½±µµ·Ï ¸î ±×·ìÀ¸·Î ³ª´©¾î ¿ä¾àÇÑ´Ù.

<1> Å©°Å³ª ÀÛÀº Á¶°Ç

<2> ¸¹°Å³ª ÀûÀº Á¶°Ç

<3> °°°Å³ª °°Áö ¾ÊÀº Á¶°Ç

<4> Á¦·Î Ç÷¡±× Á¶°Ç

<5> »çÀÎ Ç÷¡±× Á¶°Ç

<6> ÆÐ¸®Æ¼ Ç÷¡±× Á¶°Ç






ÀÌÁ¦ °¢ ±×·ìÀ» ³ª´©¾î ÇØ´çµÇ´Â ¸í·É¾î¸¦ »ìÆì º¸ÀÚ.

<1> Å©°Å³ª ÀÛÀº Á¶°Ç

JA  label : above(´õ Å­) Á¶°ÇÀÌ

¸¸Á·(CF=0, ZF=0)µÇ¸é ºÐ±â

JNBE  label : À§¿Í °°À½(not below & not

equal)

JAE label : ÀÌ»ó(above ¶Ç´Â equal) Á¶°ÇÀÌ

¸¸Á·(CF=0)µÇ¸é ºÐ±â

JNB label : À§¿Í °°À½

JNC label : À§¿Í °°À½

JB  label : below(´õ ÀÛÀ½) Á¶°ÇÀÌ

¸¸Á·(CF=1)µÇ¸é ºÐ±â

JNAE  label : À§¿Í °°À½

JC  label : À§¿Í °°À½

JBE label : ÀÌÇÏ(below ¶Ç´Â equal) Á¶°Ç(CF=1

¶Ç´Â ZF=1)ÀÌ¸é ºÐ±â

JNA label : À§¿Í °°À½

 ## ¹ßÀü Âü°í

jc, jnc´Â ¿ø·¡ 8088/8086ÀÇ ¸í·É¾îÇ¥¿¡´Â Á¤ÀǵǾî

ÀÖÁö ¾Ê´Ù. ±×·¯³ª MASM¿¡¼­´Â ±× ¸í·ÉµéÀ» Áö¿øÇÑ´Ù.

<2> ¸¹°Å³ª ÀûÀº Á¶°Ç

JG  label : greater(´õ ¸¹À½) Á¶°ÇÀÌ

¸¸Á·µÇ¸é ºÐ±â

JNLE  label : À§¿Í °°À½(<SF xor OF>=0,

ZF=0 Á¶°Ç)

JGE label : ÀÌ»ó(greater ¶Ç´Â equal)

Á¶°ÇÀÌ ¸¸Á·µÇ¸é ºÐ±â

JNL label : À§¿Í °°À½(<SF xor OF>=0

Á¶°Ç)

JL  label : less(´õ ÀûÀ½) Á¶°ÇÀÌ

¸¸Á·µÇ¸é ºÐ±â

JNGE  label : À§¿Í °°À½(<SF xor OF>=1

Á¶°Ç)

JLE label : ÀÌÇÏ(less ¶Ç´Â equal) Á¶°ÇÀÌ

¸¸Á·µÇ¸é ºÐ±â

JNG label : À§¿Í °°À½(<SF xor OF>=1

¶Ç´Â ZF=1 Á¶°Ç)

JE  label : °°À½(equal) Á¶°ÇÀÌ ¸¸Á·(ZF=1)µÇ¸é

ºÐ±â

<3> °°°Å³ª °°Áö ¾ÊÀº Á¶°Ç

JZ  label : À§¿Í °°À½

JNE label : °°Áö ¾ÊÀ½(not equal) Á¶°ÇÀÌ

¸¸Á·(ZF=0)µÇ¸é ºÐ±â

JNZ label : À§¿Í °°À½

<4> Á¦·Î Ç÷¡±× Á¶°Ç

JO  label : OF=1ÀÌ¸é ºÐ±â

JNO label : OF=0ÀÌ¸é ºÐ±â

<5> »çÀÎ Ç÷¡±× Á¶°Ç

JS  label : SF=1ÀÌ¸é ºÐ±â

JNS label : SF=0ÀÌ¸é ºÐ±â

<6> ÆÐ¸®Æ¼ Ç÷¡±× Á¶°Ç

JP  label : PF=1ÀÌ¸é ºÐ±â

JPE label : À§¿Í °°À½

JNP label : PF=0ÀÌ¸é ºÐ±â

JPO label : À§¿Í °°À½






3) ¹Ýº¹ Á¦¾î ¸í·É(Iteration Control)

¹Ýº¹ Á¦¾î ¸í·Éµµ ¸ðµÎ µ¿ÀÏÇÏ°Ô disp8(8ºñÆ® displacement)¸¦ ÇϳªÀÇ ¿ÀÆÛ·£µå·Î

ÃëÇÏ¿© IP+disp8À»  »õ·Î¿î IP·Î ¹Ù²Ù¸ç, µû¶ó¼­  »ó´ë ÁÖ¼Ò -128 ³»Áö

+127 ¹üÀ§ ³»¿¡ Á¸ÀçÇÏ´Â ·¹À̺í·Î ºÐ±âÇÏ´Â short jump ¸í·ÉÀÌ´Ù.

LOOP  label : CX-1À» CX¿¡ ÀúÀåÇϰí, ¹Ù²ï CX°¡

0ÀÌ ¾Æ´Ï¸é ·¹À̺í·Î ºÐ±â

ÇÏÁö¸¸

¹Ù²ï CX=0ÀÌ¸é ¹Ýº¹ ½ÇÇàÀ» ³¡³½´Ù.

LOOPE label : ¹Ù²ï  CX°¡ 0ÀÌ ¾Æ´Ñ µ¿½Ã¿¡  ZF=1À̸é

·¹À̺í·Î ºÐ±âÇÏÁö¸¸

¹Ù²ï

CX=0À̰ųª ZF=0ÀÌ¸é ¹Ýº¹ ½ÇÇàÀ» ³¡³½´Ù.

LOOPZ label : À§¿Í °°À½

LOOPNE  label : ¹Ù²ï  CX°¡ 0ÀÌ ¾Æ´Ñ µ¿½Ã¿¡  ZF=0À̸é

·¹À̺í·Î ºÐ±âÇÏÁö¸¸

¹Ù²ï

CX=0À̰ųª ZF=1ÀÌ¸é ¹Ýº¹ ½ÇÇàÀ» ³¡³½´Ù.

LOOPNZ  label : À§¿Í °°À½

JCXZ  label : CX=0ÀÌ¸é ·¹À̺í·Î ºÐ±â

 ## Ȱ¿ë ÆÁ

¹Ýº¹ Á¦¾î ¸í·É¿¡¼­  jcxz¸¸ CX=z(ero)¸¦ Á¶°ÇÀ¸·Î

ºÐ±âÇÒ »Ó ³ª¸ÓÁö´Â ¸ðµÎ CX°¡ 0ÀÌ ¾Æ´Ñ °ÍÀ» Çʼö Á¶°ÇÀ¸·Î ºÐ±âÇÏ´Â ¸í·ÉµéÀÌ´Ù.


4) ÀÎÅÍ·´Æ® ¸í·É(Interrupt)

ÀÎÅÍ·´Æ®ÀÇ ³»¿ëÀº ±×  ÀÚü¸¸À¸·Îµµ ¹æ´ëÇϸç, ¿ì¸®°¡ ½ÇÁ¦ ÇÁ·Î±×·¡¹ÖÀ»

ÇÏ·Á¸é ¸¹ÀÌ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â Áß¿äÇÑ °ÍÀ̱⠶§¹®¿¡ ÀÎÅÍ·´Æ®¿¡ °üÇØ¼­´Â ÀÌ Àå¿¡

À̾îÁöÁö ¾Ê´Â º°µµ ¿ø°í·Î Á¤¸®ÇÒ °ÍÀÌ´Ù.

INT type  : ¼ÒÇÁÆ®¿þ¾î ÀÎÅÍ·´Æ®

INTO  :

OF=1ÀÏ ¶§ int 4¿Í °°Àº µ¿ÀÛÀ» ¼öÇà(Á¶°ÇºÎ ÀÎÅÍ·´Æ®)

IRET  :

ÀÎÅÍ·´Æ® ¼­ºñ½º ·çƾÀ» ³¡³»°í ½ºÅà ÁÖ¼Ò·Î º¹±Í

Âü°í·Î ÀÎÅÍ·´Æ® ŸÀÔ ¹øÈ£ÀÇ ¹è´çÀ» »ìÆì º¸¸é ´ÙÀ½°ú °°´Ù.

0 ³»Áö 4(00h ³»Áö 04h)  :

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­ ³»ºÎ¿ëÀ¸·Î ÁöÁ¤

5 ³»Áö 31(05h ³»Áö 1Fh) :

ÀÎÅÚÀÇ ÇâÈÄ ¼­ºñ½º¿ëÀ¸·Î ¿¹¾à

32 ³»Áö 255(20h ³»Áö FFh) : »ç¿ëÀÚ¿¡°Ô

°³¹æµÇ¾î ÀÖÀ½

¿¹¾àµÈ ¹øÈ£ Áß¿¡¼­ ¿©·¯ °³´Â ¹ÙÀÌ¿À½º ÀÎÅÍ·´Æ®¿¡ »ç¿ëµÇ°í ÀÖ´Ù.






6. ÇÁ·Î¼¼¼­ Á¦¾î ¸í·É

ÇÁ·Î¼¼¼­ Á¦¾î  ¸í·É(Processor Control Instruction)Àº CPU  Ç÷¡±×ÀÇ

Á¦¾î ¹× ¸ÖƼ ÇÁ·Î¼¼½Ì ½Ã½ºÅÛ¿¡¼­ ¿ÜºÎ¿ÍÀÇ µ¿±â¸¦ ÃëÇϱâ À§ÇÑ ¸í·ÉÀ¸·Î 12°³°¡

ÀÖ´Ù.


1) Ç÷¡±× Á¦¾î ¸í·É(Flag Operation)

STC : CF¿¡ 1À» Àü¼Û(SeT Carry flag)

CLC : CF¿¡ 0À» Àü¼Û(CLear Carry flag)

CMC : CF°¡ 0À̸é 1·Î 1À̸é 0À¸·Î º¯°æ½ÃÅ´(CoMplement

Carry flag)

STD : DF(¹æÇâ Ç÷¡±×)¿¡ 1À» Àü¼Û(SeT Direction flag)

CLD : DF¿¡ 0À» Àü¼Û(CLear Direction flag)

STI : IF¿¡ 1À» Àü¼Û(SeT Interrupt enable flag)

CLI : IF¿¡ 0À» Àü¼Û(CLear Interrupt enable flag)

 ## Ȱ¿ë ÆÁ

¹æÇâ Ç÷¡±×°¡ ¼¼ÆÃ(=1)µÈ »óÅ¿¡¼­´Â ½ºÆ®¸µ ¸í·ÉÀÌ

½ÇÇàµÉ ¶§¸¶´Ù SI

¿Í DI°¡ °¨¼Ò(¹ÙÀÌÆ® ´ÜÀ§ 1, ¿öµå ´ÜÀ§ 2)ÇÏ°Ô µÈ´Ù.


2) ¿ÜºÎ µ¿±â Á¦¾î ¸í·É(External Synchronization)

HLT : CPU Á¤Áö(Halt until interrupt or reset)

WAIT  : TEST ÇÉÀÌ lowÀΰ¡¸¦ Á¶»ç(Wait for TEST pin active)

ESC operation :

¿ÜºÎ coprocessorÀÇ ¸í·É¾î¸¦ ½ÇÇà

LOCK  operation : ¿ÜºÎ

coprocessorÀÇ bus »ç¿ëÀ» ±ÝÁö


3) No Operation ¸í·É

NOP : ¾Æ¹« ±â´Éµµ ¼öÇàÇÏÁö ¾ÊÀ½(No OPeration)

No Operation ¸í·ÉÀº ÇÁ·Î±×·¥ÀÇ  ½ÇÇà °úÁ¤¿¡ ªÀº Áö¿¬ ½Ã°£À» »ðÀÔÇϱâ

À§Çؼ­ »ç¿ëµÉ ¼öµµ ÀÖ´Ù.



ID:
PW:

     0 ºÐ
     2 ºÐ

ÀÚÀ¯°Ô½ÃÆÇ

°Ç°­¹é°ú HOME

ȨÆäÀÌÁö HOME

Á¶   ¾à     HOME

»ýȰÁöÇý HOME

¼­½Ä¾ç½Ä HOME

¹ý¿ø Àü»ê¾ç½Ä °Ë»ö

In Na zum

ºñ°ø°³ HOME

¹é°ú³Ý Æ÷Å» : °Ç°­/¹ý·ü(¸ÞÀÎ)/ȨÇÇ/¼­½Ä/Á¶¾à/»ýȰÁöÇý

¢· 2002.9.1.~2022.5.27. ¢¹

°ü¸®ÀÚ ¿¬¶ô(ÀúÀÛ±Ç ÀÇ½É ½Å°í) : ±èº´Èñ 010-6204-4973 k8z7@hanmail.net