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

ȨÆäÀÌÁöHOME

PHP

JavaScript

HTML

CSS

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

Á¦·Îº¸µå4

µµ   ¿ò   ¸»

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

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

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

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

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

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

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

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

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

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


asm_31.

(Çϵå¿þ¾î-8088 mpu)


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

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

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

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

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

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

°­Á¿¡¼­ ¸¶À½¿¡ µå´Â °ÍºÎÅÍ °øºÎÇϽñ⠹ٶø´Ï´Ù.

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






Á¦ 31 Àå  Çϵå¿þ¾î-8088 MPU


    asm_31.ºÎÅÍ´Â IBM PCÀÇ Çϵå¿þ¾î¿¡ °üÇÏ¿© Á¤¸®ÇϰíÀÚ ÇÕ´Ï´Ù. ÇÁ·Î±×·¡¹ÖÀ»

    À§Çؼ­´Â Çϵå¿þ¾î¿¡ ´ëÇÑ ¾î´À Á¤µµÀÇ ÀÌÇØ°¡ ÇÊ¿äÇϱ⠶§¹®¿¡, ¿©·¯ Ã¥ÀÚ¸¦

    Âü°íÇÏ¿© Á¤¸®ÇØ º¸°Ú½À´Ï´Ù.


Çϵå¿þ¾î¿¡ °üÇÑ Á¤¸®·Î¼­ ¸ÕÀú 8088/8086 ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡ °üÇØ ¾Ë¾Æ

º¸±â·Î ÇÏÀÚ.

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(microprocessor ¶Ç´Â MPU, Microprocessing Unit)´Â ÄÄÇ»ÅÍÀÇ

CPU(Central Processing Unit, Áß¾Óó¸®ÀåÄ¡)¸¦ ´ÜÀÏ LSI() Ĩ¿¡ ´ã¾Æ¼­ ¸¸µç ¹ÝµµÃ¼

¼ÒÀÚÀÌ´Ù.

ÀüÅëÀûÀÎ ÄÄÇ»ÅÍÀÇ ±¸Á¶´Â CPU¿¡ ¿¬»êÀåÄ¡, Á¦¾îÀåÄ¡´Â ¹°·Ð ÁÖ±â¾ïÀåÄ¡±îÁö ÇÔ²²

Æ÷ÇԵǸç CPU°¡ ÇϳªÀÇ ¼ÒÀÚ·Î µÇ¾î ÀÖ´Â °ÍÀÌ ¾Æ´Ï¶ó ¿©·¯ °³ÀÇ ¼ÒÀÚ°¡ º¹ÀâÇÑ È¸·Î·Î

¿¬°á ±¸¼ºµÇ¾úÁö¸¸, ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡´Â ÁÖ±â¾ïÀåÄ¡¸¦ Á¦¿ÜÇÑ CPUÀÇ ¸ðµç

¿ä¼Ò°¡ ÇϳªÀÇ Ä¨¿¡ ÁýÀûµÇ¾î Àֱ⠶§¹®¿¡ Å©±â¿Í ¼ÒºñÀü·ÂÀÌ ÀÛ¾ÆÁö°í ¼º´É ´ëºñ

°¡°ÝÀÌ Àú·ÅÇÏ¿© PC º¸±ÞÀÇ ±âÆøÁ¦ ¿ªÇÒÀ» Çϰí ÀÖ´Ù.



 ## ¹ßÀü Âü°í


Ư¼öÇÑ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)·Î¼­ ´ÜÀÏ Ä¨ ¸¶ÀÌÅ©·ÎÄÄÇ»ÅÍ(singlechip microcomputer)¶ó´Â

°ÍÀÌ Àִµ¥, ±×°ÍÀº 1°³ÀÇ Ä¨¿¡ CPU ±â´ÉÀº ¹°·Ð ¸Þ¸ð¸®¿Í ÀÔÃâ·Â ȸ·Î±îÁö ³»ÀåµÇ¾î

Àֱ⠶§¹®¿¡ Ĩ Çϳª·Î¼­ ¿ÏÀüÇÑ ÄÄÇ»ÅÍÀÇ ±â´ÉÀ» °®Ãß°í ÀÖÀ¸¸ç, ºÎǰÀÇ ¼ö°¡ Àû°í

°¡°ÝÀÌ Àú·ÅÇÏ¿© ±â°èÁ¦¾î¿ëÀ¸·Î ³Î¸® »ç¿ëµÈ´Ù.






Á¦ 1 Àý  ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ Á¾·ù

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ Á¾·ùµµ ¸¹°í ºÐ·ùÇÏ´Â ¹æ¹ýµµ ¿©·¯ °¡Áö°¡ ÀÖ´Ù.

±×·¯³ª Âü°í·Î °£´ÜÈ÷ ¸î °¡Áö¸¸ ¾Ë¾Æ º¸±â·Î ÇÏÀÚ.


1. ºñÆ®¼ö¿¡ µû¸¥ MPUÀÇ Á¾·ù

ºñÆ®¼ö´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ÀÏ Ã³¸®´É·Â ¹× ¼Óµµ¿¡ °ü°èµÇ´Â »çÇ×À¸·Î

¸Å¿ì Áß¿äÇÑ °ÍÀÌ´Ù. ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)´Â 4ºñÆ®Çü, 8ºñÆ®Çü, 16ºñÆ®Çü, 32ºñÆ®ÇüÀ»

°ÅÃÄ 64ºñÆ®ÇüÀÌ µîÀåÇϰí ÀÖ´Â Çö½ÇÁ¤ÀÌ´Ù.

ÀÎÅÚ Ä¨À¸·Î¼­ °¢ ºñÆ®Çü¿¡ ÇØ´çµÇ´Â ĨÀ» »ìÆì º¸¸é ´ÙÀ½°ú °°´Ù.


4ºñÆ®Çü: 4004, 4040

8ºñÆ®Çü: 8080, 8085

16ºñÆ®Çü : 8086(8088), 80286

32ºñÆ®Çü : iAPX432, 80386,

80486

64ºñÆ®Çü : PENTIUM


Àß ¾Ë´Ù½ÍÀÌ 8088 ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)´Â ¿ÜºÎ µ¥ÀÌÅ͹ö½º°¡ 8ºñÆ®·Î 8ºñÆ®

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿Í ºñ½ÁÇÏÁö¸¸ 16ºñÆ® ÇÁ·Î¼¼¼­ÀÌ´Ù. 8086¿¡ ºñÇÏ¿© °¡°ÝÀ»

³·ÃãÀ¸·Î½á PC º¸±ÞÀ» È®»êÇϱâ À§ÇØ ¸¸µé¾îÁ³´ø ĨÀÌ´Ù.

ÇÑÆí 8085´Â 8ºñÆ® ÇÁ·Î¼¼¼­ÀÌÁö¸¸ 8008ÀÇ ¼º´ÉÀ» Çâ»ó½ÃŲ °ÍÀ̸ç, 80286Àº ¼º´ÉÀÌ

Çâ»óµÈ 16ºñÆ® ÇÁ·Î¼¼¼­, 80486Àº ¼º´ÉÀÌ Çâ»óµÈ 32ºñÆ® ÇÁ·Î¼¼¼­ÀÌ´Ù.






2. ±¸Á¶, ¿ëµµ¿¡ µû¸¥ MPUÀÇ Á¾·ù

ÀϹÝÀûÀ¸·Î ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¶ó°í ÇÏ¸é ³»ºÎ°¡ ¿¬»êºÎ, Á¦¾îºÎ, ·¹Áö½ºÅͺηÎ

±¸¼ºµÇ¾î ±âº»ÀûÀÎ CPU ±â´É »ÓÀÎ ¹ü¿ë ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¸¦ °¡¸®Å°Áö¸¸, ±×

¿Ü¿¡µµ ÀÌ¹Ì ¾ð±ÞÇÑ ´ÜÀÏ Ä¨ ¸¶ÀÌÅ©·ÎÄÄÇ»ÅÍ µîÀÌ ÀÖ´Ù.


¹ü¿ë ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­

´ÜÀÏ Ä¨ ¸¶ÀÌÅ©·ÎÄÄÇ»ÅÍ

Bit SliceÇü ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­


Slice(½½¶óÀ̽º)¶õ ¾ã°Ô ½ã Á¶°¢À» ¶æÇÏ´Â ¿µ¾î·Î, Bit SliceÇü ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­¶õ

2ºñÆ® ȤÀº 4ºñÆ® Å©±âÀÇ ±âº» ´ÜÀ§Ã¼·Î ±¸¼ºµÇ¾î ÀÖ´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)À̸ç,

±×°ÍµéÀ» ¿©·¯ °³ º´·Ä·Î Á¶ÇÕÇϸé ÀÓÀÇÀÇ µ¥ÀÌÅÍ ±æÀ̸¦ ó¸®ÇÒ ¼ö ÀÖ´Â CPU°¡ ¸¸µé¾îÁø´Ù.

±ØÈ÷ ÇÑÁ¤µÈ ºÐ¾ß¿¡¼­¸¸ »ç¿ëµÈ´Ù.


3. ¹ÝµµÃ¼ Á¦Á¶±â¼ú¿¡ µû¸¥ MPUÀÇ Á¾·ù

¹ÝµµÃ¼ Á¦Á¶±â¼úÀÇ ¹ßÀü¿¡ µû¶ó ¿©·¯ Á¾·ùÀÇ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ ³ªÅ¸³ª°Ô

µÇ¾ú´Âµ¥ ´ÙÀ½°ú °°Àº Á¾·ù°¡ ÀÖ´Ù.


PMOSÇü

NMOSÇü

COMSÇü

Schottky TTLÇü

HMOSÇü

CHMOS, HCMOS, XMOSÇü


´ëºÎºÐÀÇ 8ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡´Â NMOSÇüÀ» »ç¿ëÇϰí ÀÖÀ¸¸ç, 16ºñÆ®

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡´Â HMOSÇüÀÌ ÁÖ·Î »ç¿ëµÇ¾úÀ¸³ª 32ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡

¿Í¼­´Â ¼Óµµ°¡ ºü¸£°í ÁýÀûµµ°¡ ³ôÀº HMOSÀÇ ÀåÁ¡°ú ¼ÒºñÀü·ÂÀÌ ³·Àº CMOSÀÇ ÀåÁ¡À»

Á¶ÇÕÇÑ °í¼º´É ¹ÝµµÃ¼°¡ »ç¿ëµÇ°í Àִµ¥ ¹ÝµµÃ¼ Á¦Á¶È¸»çº°·Î ´Ù¸¥ ¸íĪÀ» ºÙ¿©¼­

CHMOS, HCMOS, XMOS µîÀÇ Ä¨ÀÌ ÀÖ´Ù.






Á¦ 2 Àý  MPUÀÇ ±¸Á¶¿Í µ¿ÀÛ

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ±¸Á¶¿Í µ¿ÀÛÀ» ÀÌÇØÇØ µÑ Çʿ䰡 ÀÖ´Ù.


1. MPUÀÇ ³»ºÎ ±¸Á¶

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ±¸Á¶´Â ´Ù¾çÇϰÚÁö¸¸, ÀϹÝÀûÀÎ ±¸Á¶¸¦ »ìÆì º¸ÀÚ.

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ³»ºÎ´Â ´ÙÀ½°ú °°ÀÌ ±¸¼ºµÇ¾î ÀÖ´Ù.


¿¬»êºÎ(ALU, Arithmetic and Logic Unit)

Á¦¾îºÎ(Control Unit)

·¹Áö½ºÅͺÎ(Registers)


¿¬»êºÎ¶õ À̸§ ±×´ë·Î »ê¼ú(arithmetic)¿¬»ê ¹× ³í¸®(logic)¿¬»ê ±â´ÉÀ» ¼öÇàÇÏ´Â

ȸ·Î¸¦ °¡¸®Å²´Ù.

¿¬»êºÎÀÇ ÁÖµÈ ¿ä¼Ò´Â °¡»ê±â(adder)ÀÌÁö¸¸, ´©»ê±â(accumulator)¿Í »óÅ ·¹Áö½ºÅÍ(status

register)¸¦ ¿¬»êºÎ¿¡ Æ÷ÇÔ½Ã۱⵵ ÇÑ´Ù.

Á¦¾îºÎ¶õ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU) ³»ºÎ¿Í ¿ÜºÎÀÇ Á¦¾î±â´ÉÀ» ¼öÇàÇϴ ȸ·ÎÀÌ´Ù.

Áï ¸í·ÉÀ» ÇØµ¶Çϰí Á¦¾î½ÅÈ£¸¦ ¹ß»ýÇÏ´Â µîÀÇ ÀÏÀ» Çϴµ¥, ¸í·É ·¹Áö½ºÅÍ(IR,

instruction register)¿Í ¸í·É ÇØµ¶±â(instruction decoder) ¹× Á¦¾î½ÅÈ£ ¹ß»ýȸ·Î

µîÀ¸·Î ±¸¼ºµÈ´Ù.

·¹Áö½ºÅͺδ ¿©·¯ °³ÀÇ ·¹Áö½ºÅÍ·Î ±¸¼ºµÇ¸ç °¢ ·¹Áö½ºÅÍ´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)

³»ºÎ¿¡¼­ ¸Þ¸ð¸®¿Í °°Àº ±â´ÉÀ» ¼öÇàÇϴµ¥, ÇÁ·Î±×·¡¸Ó°¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ¹ü¿ë ·¹Áö½ºÅÍ

¹× ½Ã½ºÅÛ ¸®Áö½ºÅÍ¿Í ÇÁ·Î±×·¡¸Ó°¡ »ç¿ëÇÒ ¼ö ¾ø´Â ·¹Áö½ºÅͰ¡ ÀÖ´Ù.






2. ·¹Áö½ºÅÍ

¿ì¸®°¡ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ³»ºÎ ±¸Á¶¸¦ ¼¼¹ÐÇÏ°Ô ¾Ë ÇÊ¿ä´Â ¾øÁö¸¸, ¿ì¸®°¡

»ç¿ëÇÒ ¼ö ÀÖ´Â ·¹Áö½ºÅÍ¿¡´Â ¾î¶² °ÍÀÌ ÀÖÀ¸¸ç ±×°ÍµéÀÌ ¾î¶² ±â´ÉÀ» ÇÏ´ÂÁö Á¤µµ´Â

¾Ë¾Æ µÎ¾î¾ß ¾î¼Àºí¸® ÇÁ·Î±×·¡¹Ö¿¡ Ȱ¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

±×·¯¹Ç·Î, ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ³»ºÎ ±¸Á¶ Áß¿¡¼­µµ ·¹Áö½ºÅÍ¿¡ ´ëÇØ ºñ±³Àû

ÀÚ¼¼ÇÑ ³»¿ëÀ» º°µµ Ç׸ñÀ¸·Î Á¤¸®ÇϰíÀÚ ÇÏ´Â °ÍÀÌ´Ù.

¿ì¸®°¡ »ç¿ëÇÒ ¼ö ÀÖ´Â ·¹Áö½ºÅÍ´Â Å©°Ô ³ª´©¾î ´ÙÀ½ÀÇ µÎ °¡Áö°¡ ÀÖ´Ù.


¹ü¿ë ·¹Áö½ºÅÍ

½Ã½ºÅÛ ·¹Áö½ºÅÍ



1) ¹ü¿ë ·¹Áö½ºÅÍ

¹ü¿ë ·¹Áö½ºÅÍ´Â ÇÁ·Î±×·¡¸Ó¿¡ ÀÇÇØ ÁÖ·Î µ¥ÀÌÅÍ º¸°ü¿ëÀ¸·Î ¾²À̱⠶§¹®¿¡ µ¥ÀÌÅÍ

·¹Áö½ºÅͶó°íµµ ºÎ¸£¸ç 8080 °è¿­¿¡´Â ¿©·¯ °³ÀÇ ¹ü¿ë ·¹Áö½ºÅͰ¡ ÀÖ´Ù.






2) ½Ã½ºÅÛ ·¹Áö½ºÅÍ

½Ã½ºÅÛ ·¹Áö½ºÅÍ¿¡´Â ´ÙÀ½°ú °°Àº °ÍµéÀÌ ÀÖ´Ù.


ÇÁ·Î±×·¥ Ä«¿îÅÍ(PC, Program Counter)

½ºÅà Æ÷ÀÎÅÍ(SP, Stack Pointer)

À妽º ·¹Áö½ºÅÍ(Index Register)

´©»ê±â(Accumulator)

»óÅ ·¹Áö½ºÅÍ(Status Register)


½Ã½ºÅÛ ·¹Áö½ºÅÍ´Â ÁÖ·Î ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ ƯÁ¤ ¿ëµµ·Î »ç¿ëÇÏ´Â °ÍÀÌÁö¸¸

ÇÁ·Î±×·¡¸Ó°¡ À̸¦ »ç¿ëÇÒ ¼öµµ ÀÖ´Ù.

ÇÁ·Î±×·¥ Ä«¿îÅÍ´Â ÇÁ·Î±×·¥ ½ÇÇà °úÁ¤¿¡¼­ ´ÙÀ½¿¡ ó¸®ÇÒ ¸í·ÉÀ̳ª µ¥ÀÌÅÍÀÇ

¸Þ¸ð¸® ¹øÁö¸¦ Áö½ÃÇÏ´Â ·¹Áö½ºÅÍÀε¥, 8088/8086¿¡¼­´Â IP(Index Pointer) ·¹Áö½ºÅͰ¡

ÇÁ·Î±×·¥ Ä«¿îÅÍ ¿ªÇÒÀ» ÇÑ´Ù.

½ºÅà Æ÷ÀÎÅÍ´Â ¸Þ¸ð¸® ³»¿¡ ÇöÀç ÀÖ´Â ½ºÅÃÀÇ ÃÖ»ó´Ü(stack top) ¹øÁö¸¦ Áö½ÃÇÏ´Â

·¹Áö½ºÅÍÀÌ´Ù.

À妽º ·¹Áö½ºÅÍ´Â ¸Þ¸ð¸®ÀÇ ±âÀú¹øÁö(base address)¸¦ ±â¾ïÇÏ´Â µ¥ ¾²ÀδÙ.

´©»ê±â´Â »ê¼ú ¹× ³í¸® ¿¬»êÀÇ °á°ú¸¦ ±â¾ïÇÏ´Â ·¹Áö½ºÅÍÀÌ´Ù.

»óÅ ·¹Áö½ºÅÍ´Â ¿¬»ê °á°úÀÇ »óŸ¦ Ç¥½ÃÇØ ÁØ´Ù.

¾Õ¼­ ¸»ÇÑ ¹Ù¿Í °°ÀÌ ´©»ê±â¿Í »óÅ ·¹Áö½ºÅÍ´Â ¿¬»êºÎ¿¡ Æ÷ÇÔ½Ã۱⵵ ÇÑ´Ù.


3) ±âŸ ·¹Áö½ºÅÍ

±× ¿Ü¿¡ ¿ì¸®°¡ »ç¿ëÇÒ ¼ö´Â ¾ø°í ´ÜÁö ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¸¸ÀÌ Æ¯¼öÇÑ ¿ëµµ¿¡

»ç¿ëÇÏ´Â ·¹Áö½ºÅͷδ ´ÙÀ½°ú °°Àº °ÍµéÀÌ ÀÖ´Ù.


¾îµå·¹½º ¹öÆÛ(MAR, Memory Address Register)

µ¥ÀÌÅÍ ¹öÆÛ(MDR, Memory Data Register)

¸í·É ·¹Áö½ºÅÍ(Instruction Register)

Àӽà ·¹Áö½ºÅÍ(Temporary Register)


¸í·É ·¹Áö½ºÅÍ¿Í Àӽà ·¹Áö½ºÅÍ´Â Á¦¾îºÎ¿¡ Æ÷ÇÔ½Ã۱⵵ ÇÑ´Ù.






3. MPUÀÇ ¿ÜºÎ ±¸Á¶

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ¿ÜºÎ´Â ¹ö½º ¹× Àü¿ø, Ŭ·°À¸·Î ±¸¼ºµÈ´Ù.


¾îµå·¹½º ¹ö½º(Address Bus)

µ¥ÀÌÅÍ ¹ö½º(Data Bus)

Á¦¾î ¹ö½º(Control Bus)

Àü¿ø

Ŭ·°(Clock)


Ŭ·° ½ÅÈ£ÀÇ ÀԷ ȸ¼ö¿¡ µû¶ó ´ÜÀ§ ½Ã°£´ç ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ µ¿ÀÛÇÏ´Â

ȸ¼öÀΠŬ·° »çÀÌŬ(Ŭ·° Á֯ļö)ÀÌ °áÁ¤µÈ´Ù. ÀϹÝÀûÀ¸·Î Ŭ·° Á֯ļö°¡ ³ôÀ¸¸é

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ Ã³¸® ¼Óµµ°¡ »¡¶óÁø´Ù.


1) ¾îµå·¹½º ¹ö½º

¾îµå·¹½º ¹ö½º¶õ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ ¿ÜºÎÀÇ ¸Þ¸ð¸®³ª ÀÔÃâ·Â ±â±âÀÇ ¹øÁö¸¦

ÁöÁ¤ÇÒ ¶§ »ç¿ëÇÏ´Â ´Ü¹æÇâ ¹ö½º(unidirectional bus)ÀÌ´Ù.

8080 °è¿­¿¡¼­´Â °°Àº ¾îµå·¹½º ¹ö½º¸¦ ÅëÇÏ¿© ¸Þ¸ð¸® ¹øÁö(memory address)¿Í

ÀÔÃâ·Â ¹øÁö(I/O port)¸¦ ±¸º°ÇÏ¿© ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.


2) µ¥ÀÌÅÍ ¹ö½º

µ¥ÀÌÅ͸¦ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)·ÎºÎÅÍ ¸Þ¸ð¸® ¶Ç´Â ÀÔÃâ·Â ±â±â·Î Ãâ·ÂÇϱ⵵

ÇÏ°í ±× ¹Ý´ë ¹æÇâÀ¸·Î ¸Þ¸ð¸® ¶Ç´Â ÀÔÃâ·Â ±â±â·ÎºÎÅÍ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)·Î

ÀÔ·ÂÇϱ⵵ ÇÏ´Â ¾ç¹æÇâ ¹ö½º(bidirectional bus)ÀÌ´Ù.


3) Á¦¾î ¹ö½º

Ãâ·Â½ÅÈ£ ¹× ÀԷ½ÅÈ£ÀÇ Àü¼Û·Î·Î »ç¿ëµÇÁö¸¸ ´Ü¹æÇâ ¹ö½º(unidirectional bus)ÀÌ´Ù.

Ãâ·Â½ÅÈ£´Â ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ ÇöÀç ¼öÇà ÁßÀÎ ÀÏÀ» ¸Þ¸ð¸®³ª ÀÔÃâ·Â ±â±â¿¡°Ô

¾Ë·Á ÁÖ´Â °ÍÀ̸ç, ÀԷ½ÅÈ£´À ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡°Ô ¾î¶² µ¿ÀÛÀ» ÃëÇϵµ·Ï

Áö½ÃÇÏ´Â °ÍÀÌ´Ù.






4. MPUÀÇ µ¿ÀÛ

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ´ÜÀ§ µ¿ÀÛÀ» ¸í·É »çÀÌŬ(instruction cycle)À̶ó°í

Çϴµ¥, ¸í·É »çÀÌŬÀº µ¿ÀÛÀÇ ³»¿ë¿¡ µû¶ó ´ÙÀ½°ú °°ÀÌ 2°¡Áö·Î ³ª´¶´Ù.


ÆäÄ¡ »çÀÌŬ(fetch cycle)

½ÇÇà »çÀÌŬ(execution cycle)


ÆäÄ¡ »çÀÌŬÀº ¸Þ¸ð¸®¿¡ ÀúÀåµÇ¾î ÀÖ´Â ÇÁ·Î±×·¥ÀÇ ÇÑ ¸í·ÉÀ» CPU·Î ÀÎÃâÇØ ¿À°í

±× ¸í·ÉÀ» ÇØµ¶Çϱâ±îÁö ÀÏ·ÃÀÇ µ¿ÀÛÀ» °¡¸®Å°¸ç, ½ÇÇà »çÀÌŬÀº ÆäÄ¡ »çÀÌŬ·Î ÀÎÃâ,

ÇØµ¶ÇÑ ¸í·É¾î¸¦ ½ÇÇàÇÏ´Â µ¿ÀÛÀ» °¡¸®Å²´Ù.

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ µ¿ÀÛÀº ÆäÄ¡ »çÀÌŬ°ú ½ÇÇà »çÀÌŬÀÌ ¿¬¼ÓÇÏ¿© ±³´ë·Î

¹Ýº¹µÇ´Â °úÁ¤À¸·Î ±¸¼ºµÈ´Ù.


1) ÆäÄ¡ »çÀÌŬ

ÆäÄ¡ »çÀÌŬÀ̶õ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)°¡ ¼öÇàÇÒ ¸í·ÉÀ» ¸Þ¸ð¸®·ÎºÎÅÍ ÀÎÃâÇÏ¿©

¸í·É ·¹Áö½ºÅÍ·Î ÀúÀåÇÏ°í ¶Ç ±× ¸í·ÉÀ» ¸í·É ÇØµ¶±â¿¡¼­ ÇØµ¶Çϱâ±îÁöÀÇ °úÁ¤À»

°¡¸®Å²´Ù.

ÆäÄ¡ »çÀÌŬÀÇ ±¸Ã¼ÀûÀÎ °úÁ¤À» ³ª´©¾î º¸¸é ´ÙÀ½°ú °°´Ù.


1. ÇÁ·Î±×·¥ Ä«¿îÅÍ(IP ·¹Áö½ºÅÍ)ÀÇ ³»¿ëÀÌ ¾îµå·¹½º ¹öÆÛ¸¦ °ÅÃÄ ¾îµå·¹½º ¹ö½º·Î

Ãâ·ÂµÇ¾î ÀÎÃâÇÒ ¸í·ÉÀÌ À§Ä¡ÇÏ´Â ¹øÁö¸¦ ÁöÁ¤ÇÔ

2. ÇÁ·Î±×·¥ Ä«¿îÅͰ¡ 1¸¸Å­ Áõ°¡

3. ÁöÁ¤µÈ ¹øÁöÀÇ ¸í·É(OP code)ÀÌ µ¥ÀÌÅÍ ¹ö½º ¹× µ¥ÀÌÅÍ ¹öÆÛ(MDR)¸¦ °ÅÃÄ ¸í·É

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

4. ¸í·É ÇØµ¶±â¿¡¼­ ¸í·É(OP code)ÀÌ ÇØµ¶µÊ







2) ½ÇÇà »çÀÌŬ

¸í·ÉÀÌ ÇØµ¶µÈ ÈÄ, ±× ¸í·ÉÀÇ ³»¿ë¿¡ ÇØ´çµÇ´Â ŸÀÌ¹Ö ¹× Á¦¾î½ÅÈ£°¡ ¼øÂ÷ÀûÀ¸·Î

¹ß»ýÇÏ¿© ¸í·ÉÀÌ ½ÇÇàµÇ´Â ´Ü°èÀÌ´Ù. ¿ÀÆÛ·£µå(operand)°¡ ÀÖ´Â ¸í·ÉÀÇ °æ¿ì¿¡´Â

¸ÕÀú ±× ¿ÀÆÛ·£µå¸¦ ¸Þ¸ð¸®·ÎºÎÅÍ ÀÎÃâÇÑ ÈÄ¿¡ ÃÖÁ¾ ½ÇÇàµÈ´Ù.



 ## ¹ßÀü Âü°í


¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿Í ¸Þ¸ð¸® »çÀÌÀÇ 1:1 ´ëÀÀ °ü°è·Î À̾îÁö´Â ÀüÅëÀûÀÎ ¼øÂ÷

½ÇÇàÀº ¸Þ¸ð¸®ÀÇ ¼Óµµ°¡ ´À¸° °ü°è·Î ºñÈ¿À²ÀûÀ̱⠶§¹®¿¡ ij½Ã ¸Þ¸ð¸®¸¦ ³»ÀåÇϰųª

ÆÄÀÌÇÁ ¶óÀÎ ±¸Á¶¸¦ äÅÃÇÑ °í¼º´É CPU¸¦ ¸¸µé¾î »ç¿ëÇϰí ÀÖ´Ù.


Á¦ 3 Àý  8088ÀÇ ³»ºÎ

¾Õ Àý¿¡¼­ ÀϹÝÀûÀÎ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ¿ÜºÎ ±¸Á¶¿Í ³»ºÎ ±¸Á¶¿¡ ´ëÇÏ¿©

Á¤¸®ÇØ º¸¾Ò´Âµ¥, ³»ºÎ´Â ¿¬»êºÎ¿Í Á¦¾îºÎ ¹× ·¹Áö½ºÅͺηΠ±¸¼ºµÇ¾ú´Ù.

±×¿Í ´Ù¸¥ °¢µµ¿¡¼­ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ³»ºÎ¸¦ ³ª´©¾î º¼ ¼öµµ ÀÖ´Ù.


½ÇÇàºÎ(EU, Execution Unit)

¹ö½º ÀÎÅÍÆäÀ̽ººÎ(BIU, Bus Interface Unit)


8088 ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ³»ºÎ¸¦ ½ÇÇàºÎ¿Í ¹ö½º ÀÎÅÍÆäÀ̽ººÎ·Î ³ª´©¾î »ìÆì

º¸´Â °ÍÀº ¿ì¸®¿¡°Ô »ó´çÇÑ µµ¿òÀÌ µÉ °ÍÀ¸·Î »ý°¢ÇÑ´Ù.






1. 8086ÀÇ ±¸Á¶

ÀÎÅÚ 8088/8086ÀÇ ³»ºÎ¸¦ º¸±â Àü¿¡ ¸ÕÀú ¿ÜºÎ¿Í ¿¬°áµÈ Àüü ±¸Á¶¸¦ º¸ÀÚ.

ÀÎÅÚ 8086À» »ç¿ëÇÏ´Â ÄÄÇ»ÅÍÀÇ ±âº» ±¸Á¶´Â ´ÙÀ½ ±×¸²°ú °°ÀÌ ±×¸± ¼ö ÀÖ´Ù.


+------+ ÁÖ¼Ò¼±

(address bus)

|  +--20-+----------------+-------------------


| 8086 | | ÀÚ·á¼±

(data bus)

|  | -16-+----------------+-------------------


| CPU  | |  ¢Ó Á¦¾î¼±

|  ¢Ó(control bus)

|  +-----+--+--+--+-------+--+--+--+----------


+------+  20 16  |  |¸Þ¸ð¸® 16 16 |  |ÀÔÃâ·ÂÀåÄ¡

 |

 |  |  | |  |  |

 |

 ¡é

    ¡é ¡é ¡é¼±ÅÃ

 ¡é ¡é ¡é ¡é¼±ÅÃ

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

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

 |  ¸Þ

¸ð ¸®  |  | ÀÔÃâ·ÂÀåÄ¡ |

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

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


ÀÎÅÚ 8086¿¡¼­ µ¥ÀÌÅÍ ÀÔÃâ·Â ¹ö½º¿Í ¸Þ¸ð¸® ¹ö½º´Â ³í¸®ÀûÀ¸·Î´Â º°°³ÀÇ °ÍÀÌÁö¸¸

½ÇÁ¦·Î´Â °°Àº ÇÉÀ» °øÀ¯Çϸç, 󸮱â´Â Á¦¾î ¹ö½º·Î Á¦¾î ½ÅÈ£¸¦ º¸³»¾î ÇöÀç ÇÉ¿¡

µµ´ÞÇÑ ÀÚ·á°¡ ÀÔÃâ·Â Á¢¼Ó±â·Î ³ª°¥ °ÍÀÎÁö ¸Þ¸ð¸® ÀåÄ¡·Î ³ª°¥ °ÍÀÎÁö¸¦ ¾Ë·Á ÁØ´Ù.



 ## Ȱ¿ë ÆÁ


¾Õ Àý¿¡¼­ µ¥ÀÌÅÍ ÀÔÃâ·Â ¹ö½º´Â ¾ç¹æÇâ ¹ö½º(bidirectional bus)ÀÎ ¹Ý¸é ¸Þ¸ð¸®

¹ö½º¿Í ÄÜÆ®·Ñ ¹ö½º´Â ´Ü¹æÇâ ¹ö½º(unidirectional bus)¶ó°í ¸»Çߴµ¥, ¾ÕÀÇ ±×¸²¿¡¼­

ÀÚ·á¼±ÀÇ ¾çÂÊ ³¡¿¡ È­»ìÇ¥°¡ ÀÖ´Â ¹Ý¸é ÁÖ¼Ò¼±°ú Á¦¾î¼±¿¡´Â ÇÑ ÂÊ ³¡¿¡¸¸ È­»ìÇ¥°¡

ÀÖ´Â °ÍÀÌ ±× Ç¥½ÃÀÌ´Ù.


±×¸²¿¡¼­ º¸´Â ¹Ù¿Í °°ÀÌ 8086ÀÇ ÁÖ¼Ò ¹ö½º´Â 20ºñÆ® Å©±âÀÌ´Ù. ±×·¯¹Ç·Î 8086À¸·Î

1MB±îÁöÀÇ ¸Þ¸ð¸® ÁÖ¼Ò¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù.



 ## ¹ßÀü Âü°í


8086ÀÇ ´ëºÎºÐÀÇ ¸í·ÉÀº 16ºñÆ®ÀÇ ÁÖ¼Ò¸¦ Ãë±ÞÇÑ´Ù. ±×¸®°í ¸Þ¸ð¸® »ç»óÀåÄ¡°¡

16ºñÆ®ÀÇ ÁÖ¼Ò¸¦ 20ºñÆ®ÀÇ ÁÖ¼Ò·Î ¹ø¿ªÇÑ´Ù. »ç»óÀåÄ¡(¾îµå·¹½º °¡»ê±â)¿¡ °üÇØ¼­´Â

Á¶±Ý ÀÖ´Ù°¡ ¼³¸íÇÏ°Ô µÉ °ÍÀÌ´Ù.


8086¿¡¼­ÀÇ ÀÔÃâ·Â ¿¬»êÀº 16ºñÆ®ÀÇ ÁÖ¼Ò¸¦ »ç¿ëÇÑ´Ù. µû¶ó¼­ CPU´Â 64KB±îÁöÀÇ

ÀÔÃâ·Â Áß°³ ·¹Áö½ºÅÍ(Æ÷Æ®)¸¦ ¿¢¼¼½ºÇÒ ¼ö ÀÖ´Ù.






2. ½ÇÇàºÎ(EU)

8088°ú 8086ÀÇ ½ÇÇàºÎ´Â µ¿ÀÏÇÑ ±¸Á¶À̸ç, ´ÙÀ½°ú °°ÀÌ ±¸¼ºµÇ¾î ÀÖ´Ù.


¹ü¿ë ·¹Áö½ºÅÍ 8°³ : AX, BX, CX,

DX, SP, BP, SI, DI

Ç÷¡±× ·¹Áö½ºÅÍ : F

¿¬»êºÎ(ALU, Arithmetic and Logic Unit)

¸í·É ÇØµ¶ ¹× Á¦¾î ȸ·Î


½ÇÇàºÎÀÇ ÁÖµÈ ±â´ÉÀº ¹ö½º ÀÎÅÍÆäÀ̽ººÎÀÇ ¸í·É ¹öÆÛ(instruction queue)·ÎºÎÅÍ

¸í·ÉÀ» ²¨³»¾î ÇØµ¶ÇÏ°í ±× ÇØµ¶µÈ ³»¿ë´ë·Î ½ÇÇàÇÏ´Â °ÍÀÌ´Ù.

¸¸¾à ½ÇÇàºÎ¿¡¼­ ÇØµ¶ÇÑ ¸í·ÉÀ» ½ÇÇàÇÏ´Â °úÁ¤¿¡ ¿ÜºÎ ¸Þ¸ð¸®³ª I/O¸¦ ¿¢¼¼½ºÇÒ

Çʿ䰡 »ý±â´õ¶óµµ Á÷Á¢ ¿¢¼¼½ºÇÏÁö´Â ¸øÇϸç, ¹Ýµå½Ã ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¿¡ ¿ä±¸ÇÏ¿©

¹ö½º ÀÎÅÍÆäÀ̽ººÎ¸¦ °ÅÃÄ °£Á¢ÀûÀ¸·Î¸¸ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Ù.

½ÇÇàºÎ°¡ ÁöÁ¤ÇÒ ¼ö ÀÖ´Â ¹øÁö(¾îµå·¹½º)´Â ¿ÀÁ÷ 16ºñÆ® ¾îµå·¹½ºÀÎ ¿ÀÇÁ¼Â(offset)ÀÏ

»ÓÀ̸ç, ½ÇÇàºÎ¿¡¼­ ¿ÀÇÁ¼Â ¹øÁö°¡ ¹ö½º ÀÎÅÍÆäÀ̽ººÎ·Î Àü´ÞµÇ¸é ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¿¡¼­´Â

±× ¹øÁö¿Í ¼¼±×¸ÕÆ® ·¹Áö½ºÅ͸¦ ÂüÁ¶(¼¼±×¸àÆÃ)ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇÑ´Ù.

±× »ç½ÇÀº ¼¼±×¸ÕÆ® ·¹Áö½ºÅͰ¡ ½ÇÇàºÎ¿¡ ¼ÓÇÏÁö ¾Ê°í ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¿¡ ¼ÓÇÏ´Â

µ¥¼­ ½±°Ô ¾Ë ¼ö ÀÖÀ» °ÍÀÌ´Ù.






3. ¹ö½º ÀÎÅÍÆäÀ̽ººÎ(BIU)

¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â ´Ù½Ã CPU ³»ºÎ¿Í ¿ÜºÎ·Î ³ª´©¾î º¼ ¼ö ÀÖ´Ù.

¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU) ³»ºÎ¿¡ ÇØ´çµÇ´Â ¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â ´ÙÀ½°ú °°´Ù.


¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ : CS, DS, SS,

ES

¸í·É Æ÷ÀÎÅÍ(IP, Instruction Pointer)

¸í·É ´ë±â ¹öÆÛ(Instruction Queue)

¾îµå·¹½º °¡»ê±â


¸í·É ´ë±â ¹öÆÛ¿¡ ´ëÇÏ¿© ¾Ë¾Æ º¸ÀÚ. ¹ö½º ÀÎÅÍÆäÀ̽ººÎ°¡ ¸Þ¸ð¸®ÀÇ ¸í·ÉÀ» ÀÎÃâÇÏ¿©

¸í·É ¹öÆÛ(Instruction Queue)¿¡ ´ë±â½ÃÄÑ µÎ¸é ½ÇÇàºÎ´Â ´ë±â ÁßÀÎ ¸í·ÉÀ» Â÷·Ê´ë·Î

Çϳª¾¿ ²¨³»¾î ÇØµ¶ÇÏ°í ½ÇÇàÇÏ°Ô µÇ¸ç, ±× »çÀÌ¿¡ ¹öÆÛ¿¡ ºó ÀÚ¸®(¹ÙÀÌÆ® ¶Ç´Â ¿öµå)°¡

»ý±â¸é ¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â ´Ù½Ã ±× ´ÙÀ½ ¸í·ÉÀ» ¸Þ¸ð¸®·ÎºÎÅÍ ÀÎÃâÇØ¼­ ¸í·É ¹öÆÛ¿¡

ÀúÀåÇÏ¿© ´ë±â½ÃŲ´Ù. ÀÌ¿Í °°ÀÌ ½ÇÇàºÎ¿Í ¹ö½º ÀÎÅÍÆäÀ̽ººÎ°¡ º´·ÄÀûÀ¸·Î ¸í·ÉÀÇ

ÀÎÃâ ¹× ½ÇÇàÀ» ºñµ¿±â ¼öÇàÇÏ´Â ¹æ¹ýÀ¸·Î Á¾·¡ÀÇ 8ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)¿¡

ºñÇÏ¿© ó¸® ¼Óµµ¸¦ Çâ»ó½Ã۰í ÀÖ´Ù.



 ## ¹ßÀü Âü°í


¸¸¾à ºÐ±â(jump), È£Ãâ(call), ºÏ±Í(return) µî°ú °°ÀÌ CPUÀÇ Á¦¾î¸¦ À̵¿½ÃŰ´Â

¸í·ÉÀÌ ½ÇÇàµÇ¸é ¸í·É ¹öÆÛ¿¡ ´ë±â ÁßÀÌ´ø ³ª¸ÓÁö ¸í·ÉµéÀº ¾Æ¹« ¾µ¸ð°¡ ¾øÀ» »Ó´õ·¯

¿ÀÈ÷·Á Àå¾Ö°¡ µÉ °ÍÀÌ´Ù. µû¶ó¼­ CPUÀÇ Á¦¾î¸¦ À̵¿½ÃŰ´Â ±×·± ¸í·ÉÀÌ ½ÇÇàµÇ¸é,

¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â Áï½Ã ¸í·É ´ë±â ¹öÆÛ(Instruction Queue)¸¦ ¸®¼ÂÇÏ¿© ºñ¿ì°í

Á¦¾î°¡ À̵¿µÈ À§Ä¡·ÎºÎÅÍ ¿ä±¸µÇ´Â »õ·Î¿î ¸í·ÉµéÀ» ÀÎÃâÇÏ¿© ¹öÆÛ¿¡ ´ë±â½ÃŲ´Ù.


¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ¿ÜºÎ¿¡ ÇØ´çµÇ´Â ¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â ´ÙÀ½°ú °°´Ù.


¾îµå·¹½º ¹ö½º

µ¥ÀÌÅÍ ¹ö½º

Á¦¾î ¹ö½º


¹ö½º ÀÎÅÍÆäÀ̽ººÎÀÇ ÁÖµÈ ÀÓ¹«´Â ¸í·É Äڵ带 ¸Þ¸ð¸®·ÎºÎÅÍ ÀÎÃâÇÏ¿© ¸í·É ¹öÆÛ(Instruction

Queue)¿¡ ÀúÀåÇØ µÎ´Â ÀÏÀÌ´Ù. ±× ¿Ü¿¡ ½ÇÇàºÎ°¡ ¸í·ÉÀ» ½ÇÇàÇÏ´Ù°¡ ÇÊ¿äÇÏ¿© ¿ÜºÎ

¹ö½º¿¡ ´ëÇÑ ¾×¼¼½º¸¦ ¿ä±¸ÇÏ´Â °æ¿ì¿¡ ±×¿¡ ÀÀÇÏ´Â °Íµµ ¹ö½º ÀÎÅÍÆäÀ̽ººÎÀÇ Áß¿äÇÑ

ÀÏ Áß ÇϳªÀÌ´Ù.

¹ö½º ÀÎÅÍÆäÀ̽ººÎ°¡ ¿ÜºÎ ¸Þ¸ð¸®¸¦ ¾×¼¼½ºÇÒ ¶§´Â, ½ÇÇàºÎ·ÎºÎÅÍ Àü´Þ¹ÞÀº ¿ÀÇÁ¼Â

¹øÁö¿¡ ¹ö½º ÀÎÅÍÆäÀ̽ººÎ ÀÚü ³»ÀÇ ÇØ´ç ¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ °ªÀ» ½ÃÇÁÆ®ÇÑ °ªÀ»

ÇÕÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇÏ°í ¾×¼¼½ºÇÑ´Ù.



 ## ¹ßÀü Âü°í


½ÇÇàºÎ¿Í ´Þ¸® ¹ö½º ÀÎÅÍÆäÀ̽ººÎ´Â 8088°ú 8086ÀÌ ´Ù¸¥ Á¡ÀÌ ÀÖ´Ù. ±× Çϳª´Â

¸í·É ¹öÆÛÀÇ Å©±â·Î¼­, 8088ÀÇ ¸í·É ¹öÆÛ´Â 4¹ÙÀÌÆ®ÀÌÁö¸¸ 8086ÀÇ ±×°ÍÀº 6¹ÙÀÌÆ®

Å©±âÀÌ´Ù. µÑ°·Î 8088Àº ¸Þ¸ð¸® µ¥ÀÌÅ͸¦ ¹ÙÀÌÆ® ´ÜÀ§·Î ¾×¼¼½ºÇÏ´Â ¹Ý¸é, 8086Àº

±×°ÍÀ» ¿öµå(2¹ÙÀÌÆ®, 16ºñÆ®) ´ÜÀ§·Î ¾×¼¼½ºÇÑ´Ù. µû¶ó¼­ 8088Àº ½ÇÇàºÎ·ÎºÎÅÍ Ãß°¡

Àü´ÞµÈ ¹ö½º ¾×¼¼½º ¿ä±¸°¡ ¾ø´Â ÇÑ ¸í·É Å¥(¸í·É ¹öÆÛ)°¡ 1¹ÙÀÌÆ®¸¸ ºñ¾î À־

Áï½Ã ´ÙÀ½ ¸í·ÉÀ» prefetchÇÏ¿© ¹öÆÛ¸¦ ä¿ìÁö¸¸, 8086Àº ¸í·É ¹öÆÛ°¡ 2¹ÙÀÌÆ® ÀÌ»ó

ºñ¾î ÀÖ¾î¾ß¸¸ ´ÙÀ½ ¸í·ÉÀ» prefetchÇÑ´Ù.






4. ·¹Áö½ºÅÍ

Áö±Ý±îÁö ·¹Áö½ºÅÍ´Â ´Ù °°Àº °ÍÀ¸·Î »ý°¢Çß´ø »ç¶÷À̶óµµ, ¾î¶² ·¹Áö½ºÅÍ´Â ½ÇÇàºÎ¿¡

¼ÓÇÏ°í ´Ù¸¥ ·¹Áö½ºÅÍ´Â ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¿¡ ¼ÓÇÑ´Ù´Â »ç½ÇÀ» ¾È °Í¸¸À¸·Î 8088ÀÇ

¼¼±×¸àÆÃ¿¡ ´ëÇÏ¿© ÇÑÃþ ±íÀº ÀÌÇØ¸¦ ÇÏ°Ô µÇ¾úÀ» °ÍÀÌ´Ù.

ÀÌÁ¦ ½ÇÇàºÎ¿Í ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¸¦ ¸Á¶óÇÏ¿© ·¹Áö½ºÅÍ Àü¹ÝÀ» Á¤¸®ÇØ º¸ÀÚ.

8088¿Í 8086¿¡´Â ²À °°ÀÌ 16ºñÆ® ·¹Áö½ºÅÍ 14°³°¡ µé¾î ÀÖ´Ù.

8088ÀÇ 14°³ ·¹Áö½ºÅÍ´Â ´ÙÀ½°ú °°Àº 4Á¾·ù·Î ±¸ºÐµÈ´Ù.


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

¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ(Segment Register) : CS, DS, SS, ES

¸í·É Æ÷ÀÎÅÍ(IP, Instruction Pointer)

Ç÷¡±× ·¹Áö½ºÅÍ(Flags)




 ## Ȱ¿ë ÆÁ


8°³ÀÇ ¹ü¿ë ·¹Áö½ºÅÍ¿Í 1°³ÀÇ Ç÷¡±× ·¹Áö½ºÅÍ µî 9°³ÀÇ ·¹Áö½ºÅÍ´Â ½ÇÇàºÎ¿¡

¼ÓÇØ ÀÖÀ¸¸ç, 4°³ÀÇ ¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ¿Í 1°³ÀÇ ¸í·É Æ÷ÀÎÅÍ µî 5°³ÀÇ ·¹Áö½ºÅÍ´Â

¹ö½º ÀÎÅÍÆäÀ̽ººÎ¿¡ ¼ÓÇØ ÀÖ´Ù.


¹ü¿ë ·¹Áö½ºÅÍ´Â ´Ù½Ã 2Á¾·ù·Î ±¸ºÐµÈ´Ù.


µ¥ÀÌÅÍ ±×·ì(Data Group) :

AX, BX, CX, DX

Æ÷ÀÎÅÍ ¹× À妽º ±×·ì(Pointer and Index Group) : SP, BP, SI, DI


¸ðµç ·¹Áö½ºÅÍ´Â 16ºñÆ® Å©±âÀÌÁö¸¸, ¹ü¿ë ·¹Áö½ºÅÍ Áß¿¡¼­ µ¥ÀÌÅÍ ±×·ì¿¡ ¼ÓÇÏ´Â

4°³ÀÇ ·¹Áö½ºÅÍ AX, BX, CX, DX´Â »óÀ§ 8ºñÆ®¿Í ÇÏÀ§ 8ºñÆ®·Î ³ª´µ¾î ±× °¢°¢ÀÌ 8ºñÆ®

·¹Áö½ºÅÍ·Î »ç¿ëµÉ ¼öµµ ÀÖ´Â ±¸Á¶¸¦ °¡Áö°í ÀÖ´Ù.






1) ¹ü¿ë ·¹Áö½ºÅÍ - µ¥ÀÌÅÍ ±×·ì

8088ÀÇ ½ÇÇàºÎ¸¦ ±¸¼ºÇÏ´Â 9°³ ·¹Áö½ºÅÍ Áß 4°³ÀÌ´Ù.

¹ü¿ë ·¹Áö½ºÅÍÀÇ µ¥ÀÌÅÍ ±×·ì¿¡ ¼ÓÇÑ ·¹Áö½ºÅ͵éÀº 4°³ÀÇ 16ºñÆ® ·¹Áö½ºÅÍ·Î »ç¿ëµÉ

¼öµµ ÀÖ°í, 8°³ÀÇ 8ºñÆ® ·¹Áö½ºÅÍ·Î »ç¿ëµÉ ¼öµµ ÀÖ´Ù.


15 ......... 8 7 ......... 0 (ºñÆ®)

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

|   AH

 | AL| Accumulator [AX]

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

|   BH

 | BL| Base

Register [BX]

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

|   CH

 | CL| Count

Register[CX]

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

|   DH

 | DL| Data

Register [DX]

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


µ¥ÀÌÅÍ ±×·ì ¹ü¿ë ·¹Áö½ºÅ͵éÀº 8ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)ÀÇ ¾îÅ¥¹Ä·¹ÀÌÅÍó·³

´ëºÎºÐÀÇ »ê¼ú ¿¬»ê ¹× ³í¸® ¿¬»ê¿¡ »ç¿ëµÉ ¼ö ÀÖÁö¸¸, ³ª¸§´ë·Î µ¶Æ¯ÇÑ ¿ëµµ¿¡ »ç¿ëµÇ´Â

¼ö°¡ ¸¹´Ù.


AX(Accumulator)


ÁÖ·Î °¢Á¾ »ê¼ú ¿¬»ê ¹× ³í¸® ¿¬»ê¿¡ »ç¿ëµÈ´Ù.


BX(Base Register)


»ê¼ú/³í¸® ¿¬»ê ¹× ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤¿¡ »ç¿ëµÈ´Ù.


CX(Count Register)


»ê¼ú/³í¸® ¿¬»ê ¿Ü¿¡µµ, ·çÇÁ ¸í·É(loop)À̶ó repeat prefix ½ºÆ®¸µ ¸í·É(rep)¿¡¼­

·çÇÁ Ä«¿îÅÍ(loop counter)·Î´Â CX ·¹Áö½ºÅͰ¡ ÁÖ·Î »ç¿ëµÇ°í, ½ÃÇÁÆ®(shift) ¹×

·ÎÅ×ÀÌÆ®(rotate) ¸í·É¿¡¼­ ºñÆ® Ä«¿îÅÍ(bit counter)·Î´Â CL ·¹Áö½ºÅͰ¡ ¸¹ÀÌ »ç¿ëµÈ´Ù.


DX(Data Register)


»ê¼ú/³í¸® ¿¬»ê ƯÈ÷ °ö¼À ¹× ³ª´°¼À¿¡¼­ ¸¹ÀÌ »ç¿ëµÇ¸ç, ÀÔÃâ·Â ¸í·É¿¡¼­ I/O

portÀÇ °£Á¢ÁöÁ¤¿¡µµ »ç¿ëµÈ´Ù.






2) ¹ü¿ë ·¹Áö½ºÅÍ - Æ÷ÀÎÅÍ ¹× À妽º ±×·ì

8088ÀÇ ½ÇÇàºÎ¸¦ ±¸¼ºÇÏ´Â 9°³ ·¹Áö½ºÅÍ Áß 4°³ÀÌ´Ù.

¹ü¿ë ·¹Áö½ºÅÍÀÇ Æ÷ÀÎÅÍ ¹× À妽º ±×·ì¿¡´Â 2°³ÀÇ Æ÷ÀÎÅÍ ·¹Áö½ºÅÍ¿Í 2°³ÀÇ À妽º

·¹Áö½ºÅͰ¡ ¼ÓÇØ ÀÖ´Ù.


Æ÷ÀÎÅÍ ·¹Áö½ºÅÍ : SP, BP

À妽º ·¹Áö½ºÅÍ : SI, DI


Ç×»ó 16ºñÆ® ·¹Áö½ºÅͷθ¸ »ç¿ëµÇ¸ç, ÁÖµÈ ÀÓ¹«´Â ¸Þ¸ð¸® ¾îµå·¹½º ÁöÁ¤ÀÌ´Ù.

±×·¯³ª »ê¼ú ¿¬»ê ¹× ³í¸® ¿¬»ê¿¡µµ »ç¿ëµÉ ¼ö ÀÖ´Ù.


SP(Stack Pointer)


¸Þ¸ð¸® »ó¿¡¼­ ½ºÅÃÀÇ »ó´ÜÀ» Áö½ÃÇϸç, ÇØ´ç À§Ä¡¸¦ ÁöÁ¤Çϱâ À§Çؼ­´Â SS(Stack

Segment)¸¦ ÂüÁ¶ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇÑ´Ù.

push, pop, call, ret ¸í·ÉÀ¸·Î ½ºÅÃÀ» Á¶ÀÛÇϸé SPÀÇ °ªÀÌ ÀÚµ¿ÀûÀ¸·Î Áõ°¡ ¶Ç´Â

°¨¼ÒÇÏ°Ô µÇ¾î ÀÖ´Ù.


BP(Base Pointer)


¿ª½Ã SS¸¦ ÂüÁ¶ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇϸç, ÁÖ·Î ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤¿¡

»ç¿ëµÈ´Ù.


SI(Source Index)


DS(Data Segment)¸¦ ÂüÁ¶ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇϸç, ÁÖ·Î ¸Þ¸ð¸®

°£Á¢¹øÁöÁöÁ¤¿¡ »ç¿ëµÇÁö¸¸, ½ºÆ®¸µ ¸í·É¿¡¼­ ¼Ò½º ¿ÀÆÛ·£µå(source operand) ÁöÁ¤¿¡µµ

ÀÌ¿ëµÈ´Ù.


DI(Destination Index)


¹°¸® ¹øÁö »êÃâ¿¡ °æ¿ì¿¡ µû¶ó 2°³ÀÇ ¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ °ª Áß Çϳª¸¦ »ç¿ëÇÑ´Ù.

Áï ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤¿¡ »ç¿ëµÇ´Â °æ¿ì¿¡´Â DS¸¦ ÂüÁ¶ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦

»êÃâÇÏÁö¸¸, ½ºÆ®¸µ ¸í·É¿¡¼­ ¸ñÀû ¿ÀÆÛ·£µå(destination operand) ÁöÀú¿¡ »ç¿ëµÉ

¶§¿¡´Â ES(Extra Segment)¸¦ ÂüÁ¶ÇÏ¿© 20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇÑ´Ù.






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

8088ÀÇ ¹ö½º ÀÎÅÍÆäÀ̽ººÎ¸¦ ±¸¼ºÇÏ´Â 5°³ ·¹Áö½ºÅÍ Áß 4°³ÀÌ´Ù.

8088°ú °°Àº 16ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­(MPU)´Â ±¸Á¶»ó 216=65536(¹ÙÀÌÆ®) Áï 64KBÀÇ

¾îµå·¹½º ¹Û¿¡´Â °ü¸®ÇÒ ¼ö ¾ø´Ù´Â ÇѰ谡 Àֱ⠶§¹®¿¡, ±× ÇѰ踦 ±Øº¹Çϰí 1MBÀÇ

¸Þ¸ð¸®¸¦ °ü¸®Çϱâ À§ÇÏ¿© ¼¼±×¸ÕÆ®°¡ ÇÊ¿äÇÏ°Ô µÈ °ÍÀÌ´Ù.

Áï 1MBÀÇ ¸Þ¸ð¸®¸¦ 64KB ´ÜÀ§ÀÇ ¼¼±×¸ÕÆ®·Î ºÐÇÒÇϸé 16°³ÀÇ ¼¼±×¸ÕÆ®°¡ µÈ´Ù.

±×·± ½ÄÀ¸·Î °¢ ¼¼±×¸ÕÆ®¸¦ °ü¸®ÇÏ¸é ¾î·µç 1MBÀÇ ¸Þ¸ð¸®¸¦ °ü¸®ÇÒ ¼ö ÀÖ´Ù.

¼¼±×¸ÕÆ® ´ÜÀ§ÀÇ ¸Þ¸ð¸® °ü¸®¿¡ À־ °¢ ¼¼±×¸ÕÆ®ÀÇ ±âÀú¹øÁö(base address)¸¦

Ç¥½ÃÇϱâ À§ÇØ »ç¿ëµÇ´Â ·¹Áö½ºÅ͸¦ ¼¼±×¸ÕÆ® ·¹Áö½ºÅͶó°í ÇÑ´Ù.

8088¿¡´Â 4°³ÀÇ ¼¼±×¸ÕÆ® ·¹Áö½ºÅͰ¡ ÀÖ´Ù.


CS(Code Segment): ¸í·É ÄÚµå

¿µ¿ª °ü¸®

DS(Data Segment): µ¥ÀÌÅÍ

¿µ¿ª °ü¸®

SS(Stack Segment) : ½ºÅà ¿µ¿ª °ü¸®

ES(Extra Segment) : º¸Á¶ ¿µ¿ª °ü¸®


20ºñÆ®ÀÇ ¹°¸® ¾îµå·¹½º¸¦ »êÃâÇϱâ À§Çؼ­´Â ¹ö½º ÀÎÅÍÆäÀ̽ººÎÀÇ ¾îµå·¹½º °¡»ê±â°¡

½ÇÇàºÎ·ÎºÎÅÍ ¹ÞÀº ¿ÀÇÁ¼Â ¹øÁö¿¡ ÇØ´ç ¼¼±×¸ÕÆ® ·¹Áö½ºÅÍ °ªÀÇ ¿ÞÂÊÀ¸·Î 4ºñÆ® ½ÃÇÁÆ®µÈ

°ªÀ» º¸Å´ ¹æ¹ýÀ» »ç¿ëÇÑ´Ù.

¹°¸® ¹øÁö¸¦ »êÃâÇÒ ¶§ º¸ÅÂÁö´Â ¼¼±×¸ÕÆ®¿Í ¿ÀÇÁ¼ÂÀÇ Á¶ÇÕÀº ´ÙÀ½°ú °°´Ù.


¿ÀÇÁ¼Â¼¼±×¸ÕÆ®ÀÛ¾÷

IPCSInstruntion

Fecth

SPSSStack

Operation

Effective Address DS(¶Ç´Â CS, ES,

SS) ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤

Effective Address SS(¶Ç´Â CS, DS,

ES) BP¸¦ »ç¿ëÇÑ ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤

SIDS(¶Ç´Â

CS, ES, SS) String Source

DIESString

Destination


ÀÌÁ¦ °¢ ¼¼±×¸ÕÆ®ÀÇ ¿ëµµ¸¦ ¾Ë¾Æ º¸ÀÚ.


CS(Code Segment)


ÇÁ·Î±×·¥ ¿µ¿ªÀÇ 64KB¸¦ ÁöÁ¤ÇÏ¿© °ü¸®Çϴµ¥, °á±¹ ±× ¹üÀ§ ¾È¿¡¼­ ¿ÀÇÁ¼Â ¹øÁö°¡

º¯ÇÔ¿¡ µû¶ó ÇÁ·Î±×·¥ÀÇ °¢ ¸í·É Äڵ尡 ¼øÂ÷ ½ÇÇàµÈ´Ù. CS:IP·Î Á¶ÇÕµÈ ¹°¸® ¹øÁö°¡

´ÙÀ½¿¡ ½ÇÇàµÉ ÄÚµåÀÇ À§Ä¡¸¦ °¡¸®Å²´Ù.


DS(Data Segment)


µ¥ÀÌÅÍ ¿µ¿ªÀÇ 64KB¸¦ ÁöÁ¤ÇÏ¿© °ü¸®ÇÑ´Ù. ¸Þ¸ð¸® Á÷Á¢¹øÁöÁöÁ¤ ¹æ½Ä¿¡¼­, ¶ÇÇÑ

BP ÀÌ¿ÜÀÇ ·¹Áö½ºÅ͸¦ »ç¿ëÇÏ´Â ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤ ¹æ½Ä¿¡¼­ ¿ÀÇÁ¼Â ¹øÁö¿Í Á¶ÇÕµÈ

¹°¸® ¹øÁö°¡ ¸Þ¸ð¸® »ó¿¡¼­ ÀÎÃâÇÒ µ¥ÀÌÅÍÀÇ À§Ä¡¸¦ °¡¸®Å²´Ù. ¶ÇÇÑ ½ºÆ®¸µ ¸í·É¿¡¼­´Â

DS:SI·Î Á¶ÇÕµÈ ¹°¸® ¹øÁö°¡ ¸Þ¸ð¸® »ó¿¡¼­ ÀÎÃâÇÒ ¼Ò½º ½ºÆ®¸µÀÇ À§Ä¡¸¦ °¡¸®Å°°Ô

µÈ´Ù.


SS(Stack Segment)


½ºÅà ¿µ¿ªÀÇ 64KB¸¦ ÁöÁ¤ÇÏ¿© °ü¸®ÇÑ´Ù. SS:SPÀÇ Á¶ÇÕÀ¸·Î ½ºÅà ¸Þ¸ð¸®ÀÇ ¹°¸®

¾îµå·¹½º°¡ »êÃâµÈ´Ù. ¶ÇÇÑ, BP¸¦ »ç¿ëÇÏ´Â ¸Þ¸ð¸® °£Á¢¹øÁöÁöÁ¤ ¹æ½Ä¿¡¼­ ¿ÀÇÁ¼Â°ú

ÇÕ»êµÇ¾î ¹°¸® ¾îµå·¹½º°¡ »êÃâµÇ±âµµ ÇÑ´Ù.


ES(Extra Segment)


º¸Á¶ ¿µ¿ªÀÇ 64KB¸¦ ÁöÁ¤ÇÏ¿© °ü¸®ÇÑ´Ù. ½ºÆ®¸µ ¸í·É¿¡¼­ ES:DIÀÇ Á¶ÇÕÀ¸·Î ¸ñÀû(destination)

ÂÊÀÇ ¹°¸® ¾îµå·¹½º°¡ »êÃâµÈ´Ù.


4) ¸í·É Æ÷ÀÎÅÍ(IP, Instruction Pointer)

8088ÀÇ ¹ö½º ÀÎÅÍÆäÀ̽º¸¦ ±¸¼ºÇÏ´Â 5°³ ·¹Áö½ºÅÍ Áß ÇϳªÀÌ´Ù.

¸í·É Æ÷ÀÎÅÍ´Â ´ÙÀ½¿¡ ½ÇÇàÇÒ ¸í·ÉÀÇ ¹øÁö¸¦ °¡¸®Å°´Â ·¹Áö½ºÅͷμ­, 8ºñÆ® ÇÁ·Î¼¼¼­¿¡

À־ÀÇ ÇÁ·Î±×·¥ Ä«¿îÅÍ(PC, Program Counter)¿¡ ÇØ´çµÈ´Ù.

CS:IPÀÇ Á¶ÇÕÀ¸·Î ´ÙÀ½¿¡ ½ÇÇàÇÒ ¸í·ÉÀÇ ¹°¸® ¾îµå·¹½º°¡ °áÁ¤µÈ´Ù.

¸í·É Æ÷ÀÎÅÍ ·¹Áö½ºÅÍÀÇ °ªÀº »ç¿ëÀÚ°¡ ÀÓÀÇ·Î º¯°æ½Ãų ¼ö ¾ø´Ù.



 ## Ȱ¿ë ÆÁ


¿ì¸®°¡ µð¹ö±×·Î ÇÁ·Î±×·¥À» © ¶§´Â ¸í·É Æ÷ÀÎÅ͸¦ Á¶ÀÛÇÒ ¼ö ÀÖ´Ù.






5) Ç÷¡±× ·¹Áö½ºÅÍ(Flags)

8088ÀÇ ½ÇÇàºÎ¸¦ ±¸¼ºÇÏ´Â 9°³ ·¹Áö½ºÅÍ Áß ÇϳªÀÌ´Ù.

8088/8086ÀÇ Ç÷¢ ·¹Áö½ºÅÍ´Â 16ºñÆ® ·¹Áö½ºÅÍÀÌÁö¸¸, Àüü 16ºñÆ® Áß¿¡¼­ ½ÇÁ¦·Î

»ç¿ëµÇ´Â °ÍÀº 9ºñÆ®ÀÌ´Ù. Ç÷¡±× ·¹Áö½ºÅÍ Àüü·Î¼­ ÇϳªÀÇ Àǹ̸¦ °¡Áø´Ù±âº¸´Ù´Â

À¯È¿ÇÑ 9°³ÀÇ ºñÆ® Áß °¢ ºñÆ®°¡ Àǹ̸¦ °¡Áö°í ÀÖ´Â °ÍÀÌ´Ù.

Ç÷¡±× ·¹Áö½ºÅÍÀÇ À¯È¿ ºñÆ®µéÀº ´Ù½Ã ´ÙÀ½°ú °°ÀÌ ³ª´­ ¼ö ÀÖ´Ù.


»óÅ Ç÷¡±×(status flag):

CF, PF, AF, ZF, SF, OF

Á¦¾î Ç÷¡±×(control flag) : TF,

IF, DF


±× Áß¿¡¼­ »óÅ Ç÷¡±×´Â ¿¬»ê°á°ú¿¡ µû¸¥ »óÅÂÀÇ º¯È­ ¿©ºÎ¸¦ Ç¥½ÃÇϸç, Á¦¾î

Ç÷¡±×´Â ½Ã½ºÅÛ Á¦¾î¸¦ À§ÇÑ Á¤º¸¸¦ Ç¥½ÃÇÑ´Ù.

Ç÷¡±× ·¹Áö½ºÅÍÀÇ °¢ À¯È¿ ºñÆ®ÀÇ ¿ëµµ¸¦ ¾Ë¾Æ º¸ÀÚ.


CF(Carry Flag)


16ºñÆ® Áß ÇÏÀ§ 8ºñÆ®¿¡¸¸ Àû¿ëµÇ´Â Ç÷¡±×·Î, ¿¬»ê ÈÄ ÃÖ»óÀ§ ºñÆ®¿¡¼­ÀÇ ÀÚ¸®

¿Ã¸²(carry)À̳ª ÀÚ¸® ³»¸²(borrow)À» Ç¥½ÃÇÑ´Ù. ¶ÇÇÑ shift³ª rotate ¸í·É¿¡¼­ bitÀÇ

°Ë»ç¿¡µµ »ç¿ëµÈ´Ù.

STC(CF=1), CLC(CF=0), CMC(CF=CF) µîÀÇ ¸í·ÉÀ¸·Î Á¦¾îÇÒ ¼ö ÀÖ´Ù.


PF(Parity Flag)


¿¬»ê °á°ú 1ÀÎ ºñÆ®°¡ ¦¼ö°³ÀÌ¸é ÆÐ¸®Æ¼ Ç÷¡±×´Â 1ÀÌ µÇ°í, ¿¬»ê °á°ú 1ÀÎ ºñÆ®°¡

Ȧ¼ö°³ÀÌ¸é ÆÐ¸®Æ¼ Ç÷¡±×´Â 0ÀÌ µÈ´Ù. ±× ¼ºÁúÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅÍ Àü¼ÛÀÇ ¿À·ù °ËÃâ¿¡µµ

ÀÌ¿ëµÈ´Ù.


AF(Auxiliary Carry Flag)


8ºñÆ®ÀÇ ÇÏÀ§ nibble(4ºñÆ®)·ÎºÎÅÍ »óÀ§ ´Ïºí·ÎÀÇ ÀÚ¸® ¿Ã¸² ¶Ç´Â »óÀ§ ´Ïºí·ÎºÎÅÍ

ÇÏÀ§ ´Ïºí·ÎÀÇ ÀÚ¸® ³»¸²À» Ç¥½ÃÇÑ´Ù. µû¶ó¼­ º¸Á¶ ij¸® Ç÷¡±×(AF)´Â 16ºñÆ® Áß

ÇÏÀ§ 8ºñÆ®ÀÇ ¿¬»ê °á°ú¿¡¸¸ Àû¿ëµÇ¸ç, 10Áø ¿¬»ê °á°úÀÇ º¸Á¤¿¡µµ »ç¿ëµÈ´Ù.


ZF(Zero Flag)


¿¬»ê °á°ú°¡ 0ÀÓÀ» Ç¥½ÃÇÏ´Â Ç÷¡±×·Î¼­, ¿¬»ê °á°ú°¡ 0À̸é Á¦·Î Ç÷¡±×´Â 1ÀÌ

µÇ°í ¿¬»ê °á°ú°¡ 0ÀÌ ¾Æ´Ï¸é Á¦·Î Ç÷¡±×´Â 0ÀÌ µÈ´Ù.


SF(Sign Flag)


¿¬»ê °á°ú°¡ À½¼öÀÎÁö ¿©ºÎ¸¦ Ç¥½ÃÇÏ´Â Ç÷¡±×·Î¼­, ¿¬»ê °á°ú°¡ À½¼öÀÌ¸é »çÀÎ

Ç÷¡±×´Â 1ÀÌ µÇ¸ç ¿¬»ê °á°ú°¡ ¾ç¼öÀÌ¸é »çÀÎ Ç÷¡±×´Â 0ÀÌ µÈ´Ù. 2Áø¼öÀÇ ÃÖ»óÀ§

ºñÆ®¿¡ »çÀÎ Ç÷¡±×¸¦ ºÙ¿© Ç¥½ÃÇÏ´Â ¹æ¹ýÀ¸·Î 2ÀÇ º¸¼ö(2's complement) ü°è°¡

¸¸µé¾îÁø´Ù.


OF(Overflow Flag)


¿¬»ê °á°ú ¼ö¿ëÇÒ ¼ö ÀÖ´Â ÀÚ¸®¼ö¸¦ ÃʰúÇÏ´Â ÀÏ(overflow)ÀÌ ¹ß»ýÇß´ÂÁöÀÇ ¿©ºÎ¸¦

Ç¥½ÃÇÏ´Â Ç÷¡±×·Î¼­, 8ºñÆ®ÀÇ ¿¬»ê °á°ú°¡ 9ºñÆ®ÀÇ ¼ö·Î µÇ°Å³ª 16ºñÆ®ÀÇ ¿¬»ê °á°ú°¡

16ºñÆ®ÀÇ ¼ö·Î µÈ °æ¿ì µî¿¡ ÀÚ¸®¼ö¸¦ ÃʰúÇÑ 1ºñÆ®´Â ¼Ò¸êµÇ¸ç, ±× Ç¥½Ã·Î ¿À¹öÇ÷οì

Ç÷¡±×¿¡ 1ÀÌ ÀúÀåµÈ´Ù.


TF(Trap Flag)


ÇÑ ¸í·ÉÀ» ½ÇÇàÇÑ ÈÄ type 1ÀÇ ÀÎÅÍ·´Æ®¸¦ ¹ß»ý½ÃÄѼ­ ¸í·ÉÀ» 1 ½ºÅܾ¿ ½ÇÇàÇϵµ·Ï

¸¸µå´Â Ç÷¡±×ÀÌ´Ù. µð¹ö°ÅÀÇ ½Ì±Û ½ºÅÜ(single step) µî¿¡¼­ »ç¿ëµÈ´Ù. Ç÷¡±× ·¹Áö½ºÅ͸¦

¸¶½ºÅ·(masking) ±â¹ýÀ¸·Î Á¶ÀÛÇÏ¿© Á¦¾îÇÒ ¼ö ÀÖ´Ù.


IF(Interrupt Enable Flag)


¿ÜºÎÀÇ ¸¶½ºÅ©ºí ÀÎÅÍ·´Æ®(maskable interrupt)¸¦ °¡´ÉÇÏ°Ô ¸¸µå´Â Ç÷¡±×ÀÌ´Ù.

STI(IF=1), CLI(IF=0) µîÀÇ ¸í·ÉÀ¸·Î Á¦¾îÇÒ ¼ö ÀÖ´Ù.


DF(Direction Flag)


½ºÆ¼¸µ ¸í·É¿¡¼­ ¼Ò½º ¶Ç´Â ¸ñÀû ¾îµå·¹½º¸¦ ÀÚµ¿À¸·Î Áõ°¡½ÃŰ±â³ª °¨¼Ò½ÃŰ´Â

Ç÷¡±×ÀÌ´Ù. DF=1À̸é auto-increment »óÅÂÀ̸ç, ¹Ý¸é¿¡ DF=0À̸é auto-decrement

»óÅÂÀÌ´Ù. ´ë»óÀÌ µÇ´Â ¾îµå·¹½º´Â ¼Ò½º ¾îµå·¹½ºÀÇ °æ¿ì SI °ªÀÌ µÇ¸ç ¸ñÀû ¾îµå·¹½ºÀÇ

°æ¿ì DI°¡ µÇ¹Ç·Î, °á±¹ DF=1À̸é SI ¶Ç´Â DI °ªÀ» ÀÚµ¿À¸·Î Áõ°¡½Ã۰í DF=0À̸é

SI ¶Ç´Â DI °ªÀ» ÀÚµ¿À¸·Î °¨¼Ò½ÃŰ°Ô µÉ °ÍÀÌ´Ù.

STD(DF=1), CLD(DF=0) µîÀÇ ¸í·ÉÀ¸·Î Á¦¾îÇÒ ¼ö ÀÖ´Ù.






                        ÀÌ ÀåÀÇ ³»¿ëÀº À±´ö¿ë(ëÅÓìéË)´ÔÀÇ "16ºñÆ® ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­ ¹× IBM PC

Çϵå¿þ¾î ÀÔ¹®"(µµ¼­ÃâÆÇ ðÈêªÞä 1994.1.10. 4ÆÇ ¹ßÇà) 1 ³»Áö 50 ÂÊÀ» ÁÖ·Î

Âü°íÇÏ°í ´Ù¸¥ Ã¥ÀÚµµ Âü°íÇϸ鼭 ÇÊÀÚ°¡ ÀÌÇØÇÏ´Â Çѵµ¿¡¼­´Â ÃÖ´ëÇÑ ½±°Ô, ¹Ýµå½Ã

Âü°íÇÒ ¸¸ÇÑ ³»¿ë¸¸ ¹ßÃé ÆíÁýÇÏ¿´Áö¸¸ ´Ù¼Ò ¾î·Á¿î ³»¿ëµµ ÀÖÀ» °ÍÀÌ´Ù. ±×·¯³ª

ÇÊÀÚ°¡ ´Ã ¸»ÇÏ´Â °Íó·³ µÚ¿¡ °¡¸é ±¸Ã¼ÀûÀÎ »ç¿ë°ú ÇÔ²² ÀúÀý·Î ´Ù ¾Ë°Ô µÇ¾î ÀÖÀ¸´Ï

¸Å´Þ¸®Áö ¸»°í ÀÌÇØµÇ´Â ºÎºÐ¸¸À¸·Îµµ ¸¸Á·ÇÏ°í ³Ñ¾î°¡±â ¹Ù¶õ´Ù. ´Ù¸¥À̵éÀÇ Ã¥ÀÚ¸¦

Âü°íÇÏ¿´Áö¸¸, ÇÊÀÚ°¡ °øºÎÇϸ鼭 ´À³¤ Á¡µéÀ» ¼ö½Ã·Î ¹Ý¿µÇÏ¿© ÆíÁýÇϹǷΠ»õ·Î¿î

¸ÀÀ» º¼ ¼ö ÀÖÀ» °ÍÀ̶ó°í ¹ÏÀ¸¸ç, ºÎÁ·ÇÑ Á¡ÀÌ ¹ß°ßµÇ¸é Ãæ°í ¸ÞÀÏ Áֽñ⠹ٶõ´Ù.



ID:
PW:

     0 ºÐ
     2 ºÐ

ÀÚÀ¯°Ô½ÃÆÇ

°Ç°­¹é°ú HOME

ȨÆäÀÌÁö HOME

Á¶   ¾à     HOME

»ýȰÁöÇý HOME

¼­½Ä¾ç½Ä HOME

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

In Na zum

ºñ°ø°³ HOME

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

¢· 2002.9.1.~2021.4.11. ¢¹

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