asm_07.
(16Áø¼ö Ãâ·Â ¥°)
ÇÁ·Î±×·¡¹Ö ¾ð¾îµµ ÇϳªÀÇ ¾ð¾îÀÔ´Ï´Ù.
¾ð¾î¶õ ÇϳªÀÇ ¾à¼ÓÀÔ´Ï´Ù.
¿ì¸®°¡ ¾à¼ÓÀ» ¸ð¸¦ ¶§ ¿ì¸®´Â ÀüÇô ¹«´ÉÇÑ »ç¶÷ÀÔ´Ï´Ù.
±×·¯³ª ÀÏ´Ü ¾à¼ÓÀ» ¾Ë°í ³ª¸é ¿ì¸®´Â À¯´ÉÇÑ »ç¶÷ÀÌ µË´Ï´Ù.
¿ì¸®´Â ¿Ü±¹ »ç¶÷µé°ú ´ëÈÇϱâ À§ÇÏ¿©, ±× ¿Ü±¹ »ç¶÷µé »çÀÌÀÇ ¾à¼ÓÀÎ ÇØ´ç ¿Ü±¹¾î¸¦
¿½ÉÈ÷ ¹è¿ó´Ï´Ù.
ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ ¹è¿ì´Â °ÍÀº È®½ÇÈ÷ ±×º¸´Ù ½±½À´Ï´Ù.
Ȥ½Ã ÇÊÀÚÀÇ µµ½º Âü°í¼°¡ ÇÊ¿äÇϽŠºÐÀº ÀÌ ÆÄÀϰú ÇÔ²² ¾ÐÃàµÇ¾î ÀÖ´Â ¾Æ½ºÅ°
ÅØ½ºÆ® ÆÄÀÏÀ» Âü°íÇϽñ⠹ٶø´Ï´Ù. 11¿ùÀ̳ª 12¿ù °æ¿¡´Â À©µµ¿ìÁî Âü°í¼ ¹× PC
Á¾ÇÕ Âü°í¼µµ ÃâÆÇÇÒ ¿¹Á¤ÀÌ´Ï ÇÁ¸°ÅÍ·Î »Ì¾Æ º¸±â°¡ °æÁ¦ÀûÀ¸·Î ºÎ´ã½º·¯¿î ºÐÀº
²À ÇÊ¿äÇÑ ºÎºÐ¸¸ ÇÁ¸°ÅÍÇØ º¸½Ã°í Àá±ñ ±â´Ù·Á Áֽñ⠹ٶø´Ï´Ù. // 94³âµµ ±ÛÀÓ
Á¦ 07 Àå 16Áø¼ö Ãâ·Â ¥°
¹Ù·Î ¾Õ¿¡¼ ¿ì¸®´Â 16Áø¼ö¸¦ 2Áø¼ö·Î Ãâ·ÂÇØ ÁÖ´Â °£´ÜÇÑ ÇÁ·Î±×·¥À» º¸¾Ò´Ù.
±×°ÍÀº ´Ü¼øÈ÷ bl ·¹Áö½ºÅÍ¿¡ ÀÌ¹Ì Á¸ÀçÇÏ´Â ÇÑ ¹ÙÀÌÆ®ÀÇ 16Áø¼ö¸¦ 2Áø¼ö·Î º¯È¯ÇÏ¿©
Ãâ·ÂÇØ ÁÖ´Â ¿ø½ÃÀûÀÎ °ÍÀÌÁö¸¸, ¿ì¸®´Â ±× ÇÁ·Î±×·¥À» ¸¸µé¾î ½ÇÇàÇØ º½À¸·Î½á 8088ÀÇ
·¹Áö½ºÅÍ¿Í Ä³¸® Ç÷¡±×¿¡ ´ëÇÏ¿© ´õ ÀÌÇØÇÏ°Ô µÇ¾ú´Ù.
ÀÌÁ¦´Â 16Áø¼ö ÀÚü¸¦ ȸ鿡 Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µé¾î º¸ÀÚ.
ÀÌ ÇÁ·Î±×·¥Àº Á¶±ÝÀº º¹ÀâÇÒ °ÍÀÌ´Ù.
»Ó¸¸ ¾Æ´Ï¶ó, ¿ì¸®´Â À̹ø¿¡´Â ´ÜÁö ·¹Áö½ºÅÍ¿¡ ÀÌ¹Ì Á¸ÀçÇÏ´Â °ªÀ» Ãâ·ÂÇÏ´Â
°ÍÀÌ ¾Æ´Ï¶ó Űº¸µåÀÇ ÀÔ·ÂÀ» ¹Þ¾Æ µé¿© Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µé °ÍÀÌ´Ù.
Á¦ 1 Àý Á¦·Î Ç÷¡±×
¾Õ¿¡¼ ¿ì¸®´Â 8088¿¡ 8 °³ÀÇ Ç÷¡±×°¡ Á¸ÀçÇÑ´Ù´Â »ç½ÇÀ» ¾Ë¾Ò´Ù.
±× Áß¿¡¼ r <Enter> ¸í·ÉÀ̳ª r f <Enter> ¸í·ÉÀ» ÇßÀ» ¶§ cy ¶Ç´Â
nc Áß Çϳª·Î ³ªÅ¸³ª´Â ij¸® Ç÷¡±×¿¡ °üÇØ¼´Â ÇÁ·Î±×·¥ ½Ç½À±îÁö ÇØ º» ¹Ù ÀÖ´Ù.
1. Âü°ú °ÅÁþ
¸ðµç Ç÷¡±×¿¡¼ ±× °ªÀÌ 1·Î ¼³Á¤µÇ¸é Âü(true)À» ¶æÇϰí, ±× °ªÀÌ 0À¸·Î ¼³Á¤µÇ¸é
°ÅÁþ(faulse)À» ÀǹÌÇÑ´Ù. À̰ÍÀº ÄÄÇ»ÅÍ ¾ð¾îÀÇ ¾à¼ÓÀÌ´Ù.
µû¶ó¼ loop ¸í·ÉÀº Àڱ⿡°Ô ³Ñ¾î¿Â cx ·¹Áö½ºÅÍÀÇ °ª¿¡¼ ÀÏ´Ü 1À» »« ÈÄ¿¡
±× ³²Àº °ªÀÌ 0ÀÌ ¾Æ´Ñ ´Ù¸¥ °ªÀ̸é ÂüÀ¸·Î ÆÇ´ÜÇÏ¿© loop <¹øÁö> <Enter>
¸í·ÉÀ» ½ÇÇàÇÏ°í ±× °á°ú ¼øÈ¯¹®ÀÇ ½ÇÇàÀÌ °è¼ÓµÇÁö¸¸, ±× »©°í ³²Àº °ªÀÌ 0ÀÌ µÇ¸é
°ÅÁþÀ¸·Î ÆÇ´ÜÇÏ¿© loop ¸í·É ÀÚüÀÇ ½ÇÇàÀ» ÇÏÁö ¾Ê°í ´ÙÀ½ ¸í·ÉÀ¸·Î Á¦¾î¸¦ ³Ñ±ä
°ÍÀ̸ç, ±×¸®ÇÏ¿© °á±¹Àº cx ·¹Áö½ºÅÍ¿¡¼ óÀ½ ÁöÁ¤ÇÑ È¸¼ö¸¸Å ¹Ýº¹ ½ÇÇàÇÏ¿´´Ù.
ÀÌÁ¦ ¿ì¸®´Â ¶Ç ÇϳªÀÇ Ç÷¡±×ÀÎ Á¦·Î Ç÷¡±×¸¦ ÀÌÇØÇϰí ÀÌ¿ëÇØ º¸ÀÚ.
2. Á¦·Î Ç÷¡±×ÀÇ Âü°ú °ÅÁþ
ij¸® Ç÷¡±×ÀÇ Âü, °ÅÁþ ÆÇ´Ü°ú Á¦·Î Ç÷¡±×ÀÇ Âü, °ÅÁþ ÆÇ´ÜÀº ¼·Î ´Ù¸£´Ù.
¾î¶»°Ô º¸¸é Á¤¹Ý´ëÀÎ °Íó·³ º¸ÀδÙ.
ÀϹÝÀûÀ¸·Î °ªÀÌ 0ÀÌ¸é °ÅÁþÀ̰í 0ÀÌ ¾Æ´Ï¸é ÂüÀÏ °Í °°Áö¸¸, Á¦·Î Ç÷¡±×ÀÇ °æ¿ì¿¡´Â
»çÁ¤ÀÌ ´Þ¶ó¼ °ªÀÌ 0À̶ó¾ß¸¸ ÂüÀÌ µÇ±â ¶§¹®ÀÌ´Ù.
¿ì¸®°¡ Ç÷¡±× ÀÔ¹®À̶õ Á¦¸ñÀ¸·Î µµ½º ¸Å´º¾ó¿¡ ³ª¿À´Â Ç¥¸¦ »ìÆìº» ÀÏÀÌ Àִµ¥,
±× Ç¥¿¡¼ ¼³Á¤, ÇØÁ¦¶ó´Â ¸» ÀÚü¸¦ Âü, °ÅÁþÀ¸·Î ¹Ù²Ù¾î º¼ ¼öµµ ÀÖ´Ù.
Á¦·Î Ç÷¡±×¿¡ 0À̶ó´Â °ªÀÌ Àü´ÞµÇ¾î Á¦·Î Ç÷¡±×°¡ ÂüÀÌ µÇ¸é °ð Á¦·Î Ç÷¡±×°¡
¼³Á¤µÇ¾ú´Ù°í ¸»ÇÒ ¼ö ÀÖÀ¸¸ç ±× ¶§ Á¦·Î Ç÷¡±×´Â zr(wero)·Î ³ªÅ¸³´Ù.
¹Ý¸é¿¡ Á¦·Î Ç÷¡±×¿¡ 0ÀÌ ¾Æ´Ñ ´Ù¸¥ °ªÀÌ Àü´ÞµÇ¸é Á¦·Î Ç÷¡±×°¡ °ÅÁþÀÌ µÇ¾î¼
ÇØÁ¦ »óŰ¡ µÉ °ÍÀ̸ç, ±× ¶§´Â Á¦·Î Ç÷¡±×°¡ nz(not zero)·Î º¸ÀδÙ.
zr zeroÁ¦·Î
Ç÷¡±× ¼³Á¤ - °ª 0 -
Âü
nz not zeroÁ¦·Î
Ç÷¡±× ÇØÁ¦ - 0ÀÌ ¾Æ´Ñ °ª- °ÅÁþ
À§ÀÇ Ç¥·Î ¸¸µç ¸Þ¸ð¸¦ º¸¸é °£´ÜÇÏ°Ô Á¤¸®°¡ µÉ ÁÙ ¹Ï´Â´Ù.
3. sub ¸í·É°ú Á¦·Î Ç÷¡±×
sub ax,bx <Enter> ¸í·ÉÀº ax °ª¿¡¼ bx °ªÀ» »« ³ª¸ÓÁö¸¦ ax ·¹Áö½ºÅÍ¿¡
ÀúÀåÇÑ´Ù´Â »ç½ÇÀº ¾Õ¿¡¼ ¹è¿î ¹Ù ÀÖ´Ù.
»¬¼ÀÀ» ÇÑ ³ª¸ÓÁö°¡ 0ÀÎ °æ¿ì¿¡´Â Á¦·Î Ç÷¡±×°¡ ¼³Á¤µÇ¾î zrÀÌ µÈ´Ù.
óÀ½ µð¹ö±×¸¦ ½ÇÇàÇÑ Áï½Ã r <Enter> ¸í·ÉÀ» ÇÏ¿© Á¦·Î Ç÷¡±×°¡ ÇØÁ¦µÈ
»óÅ Áï nz·Î º¸ÀÓÀ» È®ÀÎÇÑ ÈÄ ÀÛ¾÷À» ÇØ º¸ÀÚ.
- a 100 <Enter>
????:0100mov ax,
aa <Enter>
????:0103mov bl,
aa <Enter>
????:0105sub ax,
bx <Enter>
????:0107int 20
<Enter>
????:0109 <Enter>
-
ax, bx ·¹Áö½ºÅÍÀÇ °ªÀ» °°ÀÌ ÁÖ°í »¬¼ÀÀ» ÇßÀ¸´Ï, ³ª¸ÓÁö´Â 0ÀÌ µÇ°í Á¦·Î Ç÷¡±×´Â
´ç¿¬È÷ ÂüÀÌ µÇ¾î zr·Î º¯ÇÏ´Â »ç½ÇÀ» È®ÀÎÇÏÀÚ´Â ¸ñÀûÀÌ´Ù.
¾à°£ °¡Áö¸¦ Ãļ, À§ÀÇ ÇÁ·Î±×·¥¿¡¼ µ¿ÀÏÇÑ °ªÀ» ·¹Áö½ºÅÍ¿¡ ÀÔ·ÂÇØ ÁÖ¾úÀ½¿¡µµ
ºÒ±¸Çϰí ax ·¹Áö½ºÅÍÆ®¿Í °°ÀÌ ¿öµå ´ÜÀ§·Î ÁöÁ¤ÇßÀ» ¶§´Â ¸í·É¾î°¡ 3 ¹ÙÀÌÆ®¸¦
Â÷ÁöÇÑ ¹Ý¸é, bl ·¹Áö½ºÅÍ¿Í °°ÀÌ ¹ÙÀÌÆ® ´ÜÀ§·Î ÁöÁ¤ÇßÀ» ¶§´Â ±× ¸í·É¾î°¡ ´ÜÁö
2 ¹ÙÀÌÆ® ¹Û¿¡ Â÷ÁöÇÏÁö ¾Ê¾ÒÀ½À» ´«Ä¡°¡ ºü¸¥ »ç¶÷Àº ¾Ë¾Æ º¸¾ÒÀ» °ÍÀÌ´Ù.
ÀÌÁ¦ À§ÀÇ ÇÁ·Î±×·¥À» Á÷Á¢ ½ÇÇàÇÏ¿© Á¦·Î Ç÷¡±×ÀÇ º¯È¸¦ ´«À¸·Î È®ÀÎÇÏÀÚ.
µð¹ö±×·Î ÇÁ·Î±×·¥À» ½ÇÇàÇÏ´Â µ¥ Å©°Ô µÎ °¡Áö ¹æ¹ýÀÌ ÀÖÀ½À» ¿ì¸®´Â ¾È´Ù.
4. Àϰý ½ÇÇà, ¸í·É¾îº° ½ÇÇà
¼÷´ÞµÈ ÈÄ¿¡´Â ±¦ÂúÁö¸¸, ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ Àü¿¡´Â Ç×»ó r ip <Enter>
¸í·ÉÀ¸·Î ip ·¹Áö½ºÅͰ¡ 100ÀÓÀ» È®ÀÎÇÏ°í ´Ù¸¥ ¹øÁöÀ̸é 100À¸·Î °íÃÄ ÁÖµµ·Ï ÇÏÀÚ.
¸¸¾à r ip <Enter> ¸í·ÉÀ» Çߴµ¥ 0100ÀÌ ³ª¿À¸é ±×³É <Enter>Çϸé
µÈ´Ù.
ÀÌÁ¦ ¿ì¸®ÀÇ ÇÁ·Î±×·¥À» Àϰý ½ÇÇàÇØ º¸ÀÚ.
- g <Enter>
Program terminated normally
-
´Ù½Ã r <Enter> ¶Ç´Â r f <Enter> ¸í·ÉÀ» ÇØ º¸¾Æ¾ß Á¦·Î Ç÷¡±×´Â
nz·Î ³ª¿Â´Ù.
(r f <Enter> ¸í·ÉÀÌ ±â¾ï³ªÁö ¾ÊÀ¸¸é ¾ÕÀÇ ¿ø°í¸¦ µÚÁöµçÁö Á÷Á¢ ½ÇÇàÇØ
º¸¶ó.)
¿Ö ±×·²±î?
¾Õ¿¡¼ ¿ì¸®´Â ±× ÀÌÀ¯¸¦ °øºÎÇÑ ¹Ù ÀÖ´Ù.
µð¹ö±×´Â g <Enter> ¸í·ÉÀ» ¹ÞÀ¸¸é, ±× ¸í·ÉÀ» ½ÇÇàÇϱâ Àü¿¡ ¸ðµç
·¹Áö½ºÅÍÀÇ °ªÀ» º¸Á¸ÇØ µÎ¾ú´Ù°¡ ¸ðµç ¸í·ÉÀ» ½ÇÇàÇÏ°í ³ª¼ int 20h ¸í·É¾î¸¦
¸¸³ª¸é ¸ðµç ·¹Áö½ºÅÍÀÇ ¿ø·¡ °ªÀ» º¹±¸ÇØ Áֱ⠶§¹®ÀÌ´Ù.
±×¸®°í ip ·¹Áö½ºÅÍ °ªµµ 0100À¸·Î ¿ø»óº¹±¸½ÃÄÑ µÐ´Ù.
Áö±Ý r <Enter> ¸í·ÉÀ» ÇØ º¸¸é ip ·¹Áö½ºÅÍÀÇ °ªÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
ÀÌÁ¦ Á¦·Î Ç÷¡±×ÀÇ º¯È¸¦ È®ÀÎÇϱâ À§ÇØ ÇÑ ¸í·É¾î¾¿ ½ÇÇàÇØ º¸ÀÚ.
- t <Enter>
.................... (¿©·¯ ÁÙ »ý·«)
.................. SUB AX,BX
- t <Enter>
.................................
....................... zr ......
sub ax, bx ¸í·ÉÀÌ ½ÇÇàµÈ ÈÄ Á¦·Î Ç÷¡±×ÀÇ Ç¥½Ã°¡ zr·Î ¹Ù²ñÀ» ¾Ë ¼ö ÀÖ´Ù.
ÁÖÀÇÇÒ °ÍÀº ¸í·É¾îº° ½ÇÇà¿¡¼ int 20h ÀÌÈÄ´Â ½ÇÇàÇÏÁö ¸»¶ó´Â Á¡ÀÌ´Ù.
Á¦ 2 Àý Á¡ÇÁ ¸í·É
Á¡ÇÁ ¸í·ÉÀº Á¶°Ç ºÐ±â ¸í·É¾î(conditional jump instruction)¶ó´Â °ÍÀÌ´Ù.
Á¡ÇÁ ¸í·ÉÀº ±× ¸í·É¾î¿¡ ¼ÓÇÑ ¾î¶² Á¶°ÇÀÌ ÂüÀÌ µÇ¸é ÁöÁ¤ÇÑ ¸Þ¸ð¸® ¹øÁöÀÇ ´Ù¸¥
¸í·É¾î·Î Á¦¾î¸¦ ³Ñ±â´Â ¼öµµ ÀÖ°í, ±× Á¶°ÇÀÌ °ÅÁþÀÌ µÇ¾î¾ß ÁöÁ¤ÇÑ ¸Þ¸ð¸® ¹øÁöÀÇ
´Ù¸¥ ¸í·É¾î·Î Á¦¾î¸¦ ³Ñ±â´Â °æ¿ìµµ ÀÖ´Ù.
Á¦·Î Ç÷¡±×°ú °ü·ÃµÈ µÎ °¡Áö Á¡ÇÁ ¸í·ÉÀº jz¿Í jnzÀÌ´Ù.
jz(jump if zero)´Â ¹®ÀÚ ±×´ë·Î ÃÖ±Ù ¿¬»êÀÇ °á°ú°¡ 0ÀÏ ¶§¸¸ ÁöÁ¤ ÁÖ¼Ò·Î À̵¿ÇÑ´Ù.
Áï Á¦·Î Ç÷¡±×¸¦ Á¶»çÇÏ¿© ±×°ÍÀÌ 0 Áï ÂüÀÌ µÇ¾î zr·Î ¼³Á¤µÇ¾î ÀÖ´Ù¸é º£ÀÌÁ÷ÀÇ
if...then ¹®Àå°ú ¸¶Âù°¡Áö·Î ÁöÁ¤µÈ ÁÖ¼Ò·Î À̵¿ÇÑ´Ù´Â ¸»ÀÌ´Ù.
¹Ý´ë·Î jnz(jumpo if not zero)´Â ¿ª½Ã ¹®ÀÚ ±×´ë·Î ÃÖ±Ù ¿¬»êÀÇ °á°ú°¡ 0ÀÌ ¾Æ´Ñ
°æ¿ì¿¡, Áï Á¦·Î Ç÷¡±×°¡ ÇØÁ¦µÇ¾î nzÀÏ ¶§¿¡¸¸ ÁöÁ¤µÈ ÁÖ¼Ò·Î À̵¿ÇÑ´Ù.
¹°·Ð µÎ °¡Áö °æ¿ì ´Ù, Á¦½ÃÇÑ Á¶°Ç Áï zr ¶Ç´Â nz°¡ °ÅÁþÀÌ µÇ¿´´Ù¸é Á¡ÇÁ ¸í·ÉÀ»
½ÇÇàÇÏÁö ¾Ê°í ´Ü¼øÈ÷ ¼ø¼»ó µÚ¿¡ ³ª¿À´Â ¸í·É¾î·Î Á¦¾î¸¦ ³Ñ±â°Ô µÈ´Ù.
ÀÌ Àý¿¡¼´Â ¸ÕÀú Á¦·Î Ç÷¡±×¸¦ ÂüÁ¶ÇÏ´Â Á¡ÇÁ ¸í·É¾î·Î ½ÃÀÛÇÏ¿©, cmp ¸í·É¾îÀÇ
¿¬»ê °á°ú¸¦ ÂüÁ¶ÇÏ´Â Á¡ÇÁ ¸í·É µîÀ» ¾Ë¾Æ º¸¾Æ¼ 16Áø¼ö Ãâ·Â ÇÁ·Î±×·¥À» ¸¸µé±â
À§ÇØ ÇÊ¿äÇÑ ¸î °¡Áö Áö½ÄÀ» ÀÍÇô µÎ±â·Î ÇÑ´Ù.
1. ÁÖ¾îÁø °ª¿¡¼ 1¾¿ °è¼Ó »©´Â ÇÁ·Î±×·¥
jnz ¸í·ÉÀ» ÀÌ¿ëÇϸé, ¸ÕÀú ÀÏÁ¤ÇÑ °ªÀ» ÁÖ°í ±× °ª¿¡¼ 1¾¿ »©´Â °è»êÀ» ±× °ªÀÌ
0ÀÌ µÉ ¶§±îÁö °è¼ÓÇØ¼ ¼öÇàÇϵµ·Ï ÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µé ¼ö ÀÖ´Ù.
À̰ÍÀº ¾ÆÁÖ °£´ÜÇÑ ÇÁ·Î±×·¥ÀÌ´Ù.
- a 100 <Enter>
????:0100 moval, 09 <Enter>
????:0102 subal, 01 <Enter>
????:0104 jnz0102 <Enter>
????:0106 int20 <Enter>
????:0108 <Enter>
-
al ·¹Áö½ºÅÍ¿¡ 9h¸¦ ÀÔ·ÂÇÑ ÈÄ 1¾¿ »©¾î ³ª°¡¼ 0ÀÌ µÉ ¶§±îÁö »©°Ô µÈ´Ù.
³ª¸ÓÁö°¡ 0ÀÌ µÇ´Â ¼ø°£ Á¦·Î Ç÷¡±×°¡ zr·Î º¯ÇÒ °ÍÀ̰í, jnz ¸í·ÉÀÇ Á¶°ÇÀº
°ÅÁþÀÌ µÇ¹Ç·Î Á¡ÇÁ ¸í·ÉÀº ½ÇÇàµÇÁö ¾ÊÀ¸¸ç, µû¶ó¼ ±× µÚÀÇ int 20 ¸í·ÉÀ¸·Î Á¦¾î°¡
³Ñ¾î°¡ ÀÌ ÇÁ¸£±×·¥Àº ½ÇÇàÀ» ³¡¸¶Ä¡°Ô µÈ´Ù.
À§ ÇÁ·Î±×·¥À» g <Enter> ¸í·ÉÀ¸·Î ½ÇÇàÇÒ ¼öµµ ÀÖ´À³ª °úÁ¤À» È®ÀÎÇÒ ±æÀÌ
¾ø´Ù.
t <Enter> ¸í·ÉÀ¸·Î Çϳª¾¿ ½ÇÇàÇØ °¡¸é¼ ax ·¹Áö½ºÅÍÀÇ °ªÀÌ º¯ÇÏ´Â °ÍÀ»
ÁÖ½ÃÇ϶ó. ±×¸®°í °£°£ÀÌ Á¦·Î Ç÷¡±×µµ È®ÀÎÇØ º¸¶ó.
ax ·¹Áö½ºÅÍÀÇ °ªÀÌ 0009¿¡¼ 0008, 0007 Â÷·Ê·Î ÁÙ¾îµå´Â °ÍÀÌ º¸ÀÌÁö¸¸ Á¦·Î
Ç÷¡±×´Â Ç×»ó nz·Î º¯ÇÔÀÌ ¾øÀ» °ÍÀÌ´Ù. ±×·¯´Ù°¡, ax ·¹Áö½ºÅÍÀÇ °ªÀÌ 0À¸·Î
º¯ÇÔ°ú µ¿½Ã¿¡ Á¦·Î Ç÷¡±×µµ zr·Î º¯ÇÏ´Â »ç½ÇÀ» È®ÀÎÇÒ ¼ö ÀÖÀ¸¸é ÁÁ´Ù.
2. cmp ¸í·É°ú jl Á¡ÇÁ ¸í·É
µÎ ¼ö¸¦ ºñ±³ÇÏ¿© ±× Â÷À̸¦ ¾Ë¾Æ º¸´Â ¸í·É¾î·Î ¿ì¸®´Â sub ¸í·ÉÀ» ¾Ë°í ÀÖ´Ù.
±×·±µ¥ sub ax, bx <Enter> ¸í·ÉÀº °á±¹ ax °ªÀ» º¯°æ½ÃŲ´Ù.
±×¿Í ´Þ¸® cmp ¸í·ÉÀ» »ç¿ëÇÏ¸é µÎ °ªÀ» ºñ±³Ç쵂 °ªÀ» º¯°æ½ÃŰÁö´Â ¾Ê´Â´Ù.
µû¶ó¼ cmp ¸í·É¾î¿Í ÇÔ²² jl(jump if less than) ¸í·É¾î¸¦ »ç¿ëÇÑ´Ù¸é 16Áø¼ö¸¦
Ãâ·ÂÇÏ´Â ÇÁ·Î±×·¥À» ¸¸µå´Â µ¥ ÇÑ ¹ß ¼ºÅ ´Ù°¡¼³ ¼ö ÀÖ°Ô µÈ´Ù.
ÀÏ´Ü ÇÁ·Î±×·¥À» ¸¸µé¾î º¸°í ÀÌ·ÐÀûÀÎ ¸éÀ» °è¼ÓÇØ¼ °øºÎÇϱâ·Î ÇÏÀÚ.
- a 100 <Enter>
????:0100mov ah,
02 <Enter>
????:0102mov dl,
bl <Enter>
????:0104add dl,
30 <Enter>
????:0107cmp dl,
3a <Enter>
????:010Ajl010f
<Enter>
????:010Cadd dl,
07 <Enter>
????:010Fint 21
<Enter>
????:0111int 20
<Enter>
????:0113 <Enter>
-
À§ÀÇ ÇÁ·Î±×·¥À» Á¤È®ÇÏ°Ô ÀÔ·ÂÇÏ¿© ¸¸µé¾ú´Ù¸é ÀÌÁ¦ ½ÇÇàÀ» ÇØ º¸µµ·Ï ÇÏÀÚ.
±×´ë·Î g <Enter> ¸í·ÉÀ» ÇÏ¸é ´ÙÀ½°ú °°Àº °á°ú¸¦ º¸°Ô µÉ °ÍÀÌ´Ù.
- g <Enter>
0
Program terminated normally
-
¿Ö À§¿Í °°Àº °á°ú°¡ ³ª¿ÔÀ»±î?
r <Enter> ¸í·ÉÀ¸·Î È®ÀÎÇÒ ¼ö ÀÖ´Â ¹Ù¿Í °°ÀÌ, bl(bx) ·¹Áö½ºÅÍÀÇ °ªÀº
¿ì¸®°¡ ¾Æ¹« °ªµµ ÀÔ·ÂÇÏÁö ¾Ê¾ÒÀ¸¹Ç·Î 0ÀÌ´Ù. µû¶ó¼ add bl,30 <Enter>
¸í·ÉÀ» ¸¸³ª bl °ªÀº 30À¸·Î º¯ÇÑ´Ù. ´ÙÀ½ cmp ¸í·ÉÀ» ¸¸³ª 30À» 37°ú ºñ±³ÇÏ¿©
30ÀÌ ´õ ÀÛÀ¸¹Ç·Î jl ¸í·ÉÀÇ Á¶°Ç(less than)À» ¸¸Á·½ÃŰ¹Ç·Î int 21h ¸í·ÉÀ¸·Î Á¡ÇÁÇϰÔ
µÈ´Ù.
°á±¹ µð¹ö±×´Â Äڵ尪 30h¿¡ ÇØ´çµÇ´Â 0À̶ó´Â ¹®ÀÚ¸¦ ȸ鿡 Ãâ·ÂÇÑ °ÍÀÌ´Ù.
À̰ÍÀº ¾ÆÁ÷ ¿ì¸®°¡ ¿øÇÏ´Â ¿Ï¼ºµÈ ÇÁ·Î±×·¥Àº ¾Æ´Ï´Ù.
±×·¯³ª ´çÀå r bx <Enter> ¸í·ÉÀ¸·Î bl ·¹Áö½ºÅÍ¿¡ ÇÑ ÀÚ¸®ÀÇ 16Áø¼ö¸¦
ÀÔ·ÂÇÑ ÈÄ¿¡ g <Enter> ¸í·ÉÀ¸·Î ÇÁ·Î±×·¥À» ½ÇÇàÇØ º¸¸é ÀÔ·ÂµÈ ¹®ÀÚ¸¦ ±×´ë·Î
Ãâ·ÂÇØ ÁÖ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖÀ» . º¸°Ô i¡¡ ¡¡¡¡¡¡ Ò± ¸é ¸¸Á·ÇÒ ¼ö ÀÖÀ»
.
3. ÇÁ·Î±×·¥ ÀúÀå
¹«½ÉÄÚ µð¹ö±×¸¦ ³¡³»°í ³ª¸é, À§ ÇÁ·Î±×·¥À» ´Ù½Ã ÇÑ ¹ø ½ÇÇàÇØ º¸¾ÒÀ¸¸é ÇÏ´Â
¾Æ½¬¿òÀÌ ³²±â ¸¶·ÃÀÌ´Ù.
ÀÌ·±i¤³ ÇÁ·Î±×·¥À» ÀúÀåÇØ µÎ¸é ´Ù½Ã óÀ½ºÎÅÍ ÀÔ·ÂÇÏ´Â ¼ö°í¸¦ ´ú°Ô µÈ´Ù.
ÇÁ·Î±×·¥À» ÀúÀåÇÏ´Â ½Ç½Àµµ ÇØ º» Áö ¿À·¡À̹ǷΠº¹½À °âÇØ¼ ÇÑ ¹ø ÀúÀåÇÏÀÚ.
¸Õ iÇÁ·Î±×·¥ÀÇ À̸§À» Áö¾î ÁÖ¾î¾ß µÈ´Ù.
±×¸®°í´Â ÇÁ·Î±×·¥ÀÇ Å©±â¸¦ cx ·¹Áö½ºÅÍ¿¡ ÀÔ·ÂÇØ ÁÖ¾î¾ß µÈ´Ù.
±×¸®°í ³ª¼´Â w <Enter> ¸í·ÉÀ¸·Î ÀúÀåÇÏ¸é ³¡³´Ù.
- n 16.com <Enter>
- r cx <Enter>
CX 0000
: 113 <Enter>
- w <Enter>
Writing 00113 bytes
-
ÀÌÁ¦´Â Ȥ½Ã µð¹ö±×¸¦ ³¡³½ ÈÄ¿¡ ´Ù½Ã ÀÌ ÇÁ·Î±×·¥À» »ç¿ëÇØ º¸°í ½ÍÀº ¸¶À½ÀÌ
»ý±ä´Ù¸é debug 16.com <Enter> ¸í·ÉÀ¸·Î ÇÁ·Î±×·¥À» È£ÃâÇÏ¿© ½ÇÇàÇÒ ¼ö ÀÖ´Ù.
ÀÌÁ¦ ¾È½ÉÇϰí r bx <Enter> ¸í·ÉÀ¸·Î 1 ÀÚ¸®ÀÇ 16Áø¼ö Áï 0, 1, 2, ...
e, f Áß Çϳª¸¦ ÀÔ·ÂÇÑ ÈÄ g <Enter> ¸í·ÉÀ» ÇØ º¸¸é ÀÔ·ÂµÈ ±×´ë·Î Ãâ·ÂµÇ´Â
°ÍÀ» º¸°Ô µÈ´Ù.
Á¦ 3 Àý 16Áø¼ö Ãâ·Â ÇÁ·Î±×·¥ ºÐ¼®
Ãʺ¸ÀÚ¸¦ À§ÇÏ¿©, À§¿¡¼ ¸¸µç ÇÁ·Î±×·¥À» ±×´ë·Î ¿Å°Ü µÎ°í ¾î°¼ ¿ì¸®°¡ ÀÔ·ÂÇÑ
16Áø¼ö¸¦ ±×´ë·Î Ãâ·ÂÇØ Áִ°¡ ÇÏ´Â ½ÇÇà ±¸Á¶¸¦ ¼³¸íÇϱâ·Î ÇÑ´Ù.
ÇÊÀÚ°¡ ¹æ±Ý ÇÑ ¸» ÀÚü¸¦ ÀÌÇØÇÏÁö ¸øÇÏ´Â ¿ÕÃʺ¸ÀÚµµ ÀÖÀ» °ÍÀÌ´Ù.
±×·¯³ª, ¾Æ½ºÅ° Äڵ尪 Ç¥¸¦ º¸¸é ±Ý¹æ ÀÌÇØÇÒ ¼ö ÀÖ´Ù.
16Áø¼ö¿Í ±× °ªÀ¸·Î Ç¥½ÃÇÏ´Â ¾Æ½ºÅ° ¹®ÀÚ¸¦ óÀ½ºÎÅÍ »ìÆì º¸¸é, 16Áø¼ö 0À¸·ÎºÎÅÍ
2f±îÁö¿¡´Â Ư¼ö ¹®ÀÚ°¡ ¹è´çµÇ¾î ÀÖÀ¸¸ç, 16Áø¼ö 30À¸·ÎºÎÅÍ 39±îÁö°¡ ¼ýÀÚ 0À¸·ÎºÎÅÍ
9±îÁöÀÇ ¹®ÀÚ¿¡ ¹è´çµÇ¾î ÀÖ´Ù.
16Áø¼ö(Hex)0 ¡ 2F 30
31 32 33 34 35 36 37 38 39
¾Æ½ºÅ° ¹®ÀÚÆ¯¼ö¹®ÀÚ0
1 2 3 4 5 6 7 8 9
µû¶ó¼, dl ·¹Áö½ºÅÍ¿¡ 0¿¡¼ 9±îÁöÀÇ 16Áø¼ö¸¦ ÀÔ·ÂÇÏ¿© ±×´ë·Î Ãâ·ÂÇϸé ÀԷµÈ
¼ýÀÚ¿Í´Â ´Ù¸¥ Ư¼ö¹®ÀÚ°¡ Ãâ·ÂµÉ °ÍÀÌ´Ù.
ÀÌÁ¦ ¿ì¸®ÀÇ ÇÁ·Î±×·¥À» ¿Å°Ü µÎ°í º¸¸é¼ ¼³¸íÀ» °è¼ÓÇϱâ·Î ÇÑ´Ù.
¼³¸íÇÏ±â ÆíÇϵµ·Ï ¸í·É¾î¸¶´Ù (1) (2) µîÀÇ ÁÙ ¹øÈ£¸¦ ºÙÀÌ°í ½ÃÀÛÇÏÀÚ.
- a 100 <Enter>
????:0100mov ah,
02 <Enter>(1)
????:0102mov dl,
bl <Enter> (2)
????:0104add dl,
30 <Enter> (3)
????:0107cmp dl,
3a <Enter> (4)
????:010Ajl010f
<Enter>(5)
????:010Cadd dl,
07 <Enter> (6)
????:010F¡¡ 21
<Enter>(7)
????:0111¡¡ 20
<Enter>(8)
????:0113 <Enter>
-
¸í·É¾î (1) (2) (7) (8)¸¸À¸·Îµµ ÇÁ·Î±×·¥À» ¸¸µé ¼ö´Â ÀÖ´Ù.
¸¸¾à ±×·¸°Ô ¸ð¾Æ¼ ÇÁ·Î±×·¥À» ¸¸µç´Ù¸é, ¹æ±Ý ÁöÀûÇÑ ¹Ù¿Í °°ÀÌ ¿ì¸®°¡ ÀÔ·ÂÇÑ
16Áø¼ö 1 ÀÚ¸® ¼ýÀÚ¿¡ ´ëÀÀÇϴ Ư¼ö¹®ÀÚµéÀÌ Ãâ·ÂµÉ »ÓÀÌ´Ù.
À̰ÍÀº ¿ì¸®°¡ ÀǵµÇÑ ¹ÙÀÇ ¸ñÀû¿¡´Â ¸ÂÁö ¾Ê´Â °ÍÀÌ´Ù.
µû¶ó¼ (3) ¸í·É¾î°¡ ÇÊ¿äÇÏ°Ô µÇ´Â °ÍÀÌ´Ù.
±×·¯¹Ç·Î ¸í·É¾î (1) (2) (3) (7) (8)À» ¸ð¾Æ¼ ÇÁ·Î±×·¥À» ¸¸µé¾î º¼ ¼ö ÀÖ´Ù.
±×·¯¸é, ¿ì¸®°¡ 0 ³»Áö 9±îÁöÀÇ 16Áø¼ö¸¦ ÀÔ·ÂÇϸé ÇÁ·Î±×·¥ÀÌ ±× ¼ö °¢°¢¿¡ 30À»
º¸Å¾î 30 ³»Áö 39¶ó´Â 16Áø¼ö·Î ¹Ù²Û ÈÄ ±× Äڵ尪¿¡ ´ëÀÀÇÏ´Â 0 ³»Áö 9±îÁöÀÇ ¹®ÀÚ¸¦
Ãâ·ÂÇØ ÁØ´Ù. À̰ÍÀº ¿ì¸®ÀÇ ¸ñÀû¿¡ ºÎÇÔÇÏ´Â °ÍÀÌ´Ù.
À̰ÍÀ¸·Î ¿ì¸®ÀÇ ¸ñÀûÀÌ ¸ðµÎ ´Þ¼ºµÇ¾ú´Ù¸é cmp, jl µîÀ» »ç¿ëÇÏ´Â ¸í·É¾î ÁÙµéÀÎ
(4) (5) (6)Àº ºÒÇÊ¿äÇÒ °ÍÀÌ´Ù.
±×·¯³ª, 16Áø¼ö 1 ÀÚ¸® ¼ýÀڷδ 0¿¡¼ 9±îÁö ¸»°íµµ a¿¡¼ f±îÁö 6 °³°¡ ÀÖ´Ù.
±× ¼ýÀÚ¸¦ µ¿ÀÏÇÑ ¹®ÀÚ·Î Ãâ·ÂÇϱâ À§Çؼ´Â ±× ¹®ÀÚÀÇ ¾Æ½ºÅ° Äڵ尪ÀÌ 16Áø¼ö·Î
¾ó¸¶¿¡ ÇØ´çµÇ´ÂÁö¸¦ »ìÆì º¼ Çʿ䰡 ÀÖ´Ù.
¾Æ½ºÅ° Äڵ尪 Ç¥ÀÇ ÇØ´çµÇ´Â ºÎºÐÀ» »ìÆì º¸µµ·Ï ÇÏÀÚ.
16Áø¼ö(Hex)3A 3B 3C 3D 3E 3F 40 41 42 43
44 45 46
¾Æ½ºÅ° ¹®ÀÚ: ; <
= > ? @ A B C D E
F
Äڵ尪 3a·ÎºÎÅÍ 40±îÁö 7 °³ÀÇ ÀÚ¸®¿¡´Â ÄÝ·Ð(:) µî Ư¼ö¹®ÀÚ°¡ ¹è´çµÇ¾î ÀÖ´Ù.
¸¸¾à, ±× 7 °³°¡ ºüÁ® ÀÖ´Ù¸é Á¶±Ý Àü¿¡ ¿ì¸®°¡ Ãß·Á ¸ð¾Ò´ø (1) (2) (3) (7)
(8) µî 5 ÁÙÀÇ ¸í·É¾î¸¸À¸·Îµµ 0¿¡¼ f±îÁö 16Áø¼ö 1 ÀÚ¸® ¼ýÀÚ¸¦ ´Ù Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.
±×·¯³ª, ¿øÇÏÁö ¾Ê´Â 7 ¹®ÀÚ°¡ »çÀÌ¿¡ ³¢¾î Àֱ⠶§¹®¿¡ ¿ì¸®´Â ºÎµæÀÌ ÇÁ·Î±×·¥À»
º¹ÀâÇÏ°Ô ¸¸µé¾î ½ÇÇàÇÏÁö ¾ÊÀ» ¼ö ¾ø´Â °ÍÀÌ´Ù.
¼·ÐÀº ÀÌ Á¤µµ·Î ¸¶Ä¡°í, ÇÁ·Î±×·¥ÀÇ ÀüüÀûÀÎ È帧À» Á¤¸®ÇÏÀÚ.
¸í·É (1)¿¡¼´Â ³ªÁß¿¡ int 21h°¡ ½ÇÇàµÉ ¶§ dl ·¹Áö½ºÅÍÀÇ °ª¿¡ ´ëÀÀÇÏ´Â ¾Æ½ºÅ°
¹®ÀÚ¸¦ Ãâ·ÂÇϱâ À§ÇØ ¹Ì¸® ÁغñÇØ µÎ´Â °ÍÀÌ´Ù.
¸í·É (2)´Â ¾ÆÁ÷ ¹Ì¿Ï¼ºÀÌ ÀÌ ÇÁ·Î±×·¥¿¡¼´Â »çÁ·°ú °°Àº °ÍÀÌÁö¸¸, ³ªÁß¿¡ µð¹ö±×¿¡
ÀÇÁ¸ÇÏÁö ¾Ê°í µ¶¸³µÈ ÇÁ·Î±×·¥À¸·Î 16Áø¼ö¸¦ ÀÐ¾î µé¿© ±× °ªÀ» dl ·¹Áö½ºÅÍ·Î º¹»çÇÏ´Â
¸ð¾çÀ» ¹Ì¸® ¿¬½ÀÇÏ´Â Àǹ̰¡ ÀÖ´Ù°í »ý°¢ÇÏ°í ¾à°£ ¼ö°íÇÏÀÚ.
´Ù½Ã ¸»Çؼ ÀÌ ÇÁ·Î±×·¥¿¡¼´Â (2) ¸í·ÉÁÙÀ» »ý·«Çϰí, ½ÇÇàÇϱâ Àü¿¡ 16Áø¼ö
1 ÀÚ¸®¸¦ °ðÀå dl ·¹Áö½ºÅÍ·Î ÀÔ·ÂÇØµµ ¸¶Âù°¡Áö·Î ½ÇÇàÀÌ µÈ´Ù.
¸í·É (3)Àº 16Áø¼öÀÇ Ã¹ ¹®ÀÚ 0ÀÌ Äڵ尪 30¿¡ ¹è´çµÇ¾î Àֱ⠶§¹®¿¡ ÀÔ·ÂµÈ ¹®ÀÚ¿¡
30À» ´õÇØ ÁÖ¾î ÀÔ·ÂµÈ ¼ýÀÚ¿Í °°Àº ¹®ÀÚ¸¦ Ãâ·ÂÇÏ´Â ¸í·ÉÀÌ´Ù.
±×·¯³ª ÀÌ ¸í·ÉÀÇ È¿·ÂÀº ÀÔ·ÂµÈ 16Áø¼ö°¡ 0¿¡¼ 9±îÁöÀÇ ¹üÀ§¿¡ µé¾î ÀÖ¾î¾ß¸¸
Á¤»óÀûÀ¸·Î ³ªÅ¸³´Ù. ¸¸¾à a¿¡¼ f »çÀÌÀÇ ¼ýÀÚ°¡ ÀÔ·ÂµÇ¸é ¹®Á¦´Â ´Þ¶óÁø´Ù.
±× ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ ¸í·É (4) (5) (6)ÀÌ ÇÊ¿äÇÑ °ÍÀÌ´Ù.
±× 3 ÁÙÀÇ ¸í·ÉÀ» ´Ù½Ã ³ª´©¾î »ìÆì º¼ Çʿ䰡 ÀÖ´Ù.
¸í·É (3)¿¡¼ 30À» º¸ÅÄ °á°ú dl ·¹Áö½ºÅÍÀÇ °ªÀÌ 39 ÀÌÇÏÀ̸é ÀÔ·ÂµÈ 16Áø¼ö´Â
0¿¡¼ 9±îÁö¿¡ µé¾î ÀÖÀ¸¹Ç·Î °ðÀå int 21h ¸í·ÉÀ¸·Î Ãâ·ÂÇÏ¸é ±×¸¸ÀÌ´Ù.
±× ³»¿ëÀÌ (4) (5) ¸í·ÉÁÙ¿¡ Æ÷ÇԵǾî ÀÖ´Â °ÍÀÌ´Ù.
(4) ¸í·ÉÀº ÀÔ·ÂµÈ 16Áø¼ö¿¡ 30À» ´õÇÑ °á°ú Áõ°¡ÇÑ dl °ªÀ» 3a¿Í ºñ±³ÇÏ´Â °ÍÀ̸ç,
À̾îÁö´Â (5) ¸í·ÉÀº ¸¸¾à dl °ªÀÌ 3aº¸´Ù ÀÛÀº °æ¿ì jl ¸í·ÉÀÇ Á¶°Ç(less than)ÀÌ
ÂüÀ̹ǷΠint 21h ¸í·ÉÀ¸·Î Á¡ÇÁÇÏ¿© ±×´ë·Î Ãâ·ÂÇÏ°Ô µÈ´Ù.
±×·¯³ª ¸¸¾à Áõ°¡µÈ dl °ªÀÌ 3aº¸´Ù ÀÛÁö ¾ÊÀ¸¸é(°°°Å³ª Å©¸é), º¸´Ù ÀÛ´Ù´Â Á¶°ÇÀÌ
°ÅÁþÀÌ µÇ¹Ç·Î Á¡ÇÁ ¸í·ÉÀº ¹«½ÃµÇ°í ±× ´ÙÀ½ÀÇ (6) ¸í·ÉÀÌ ½ÇÇàµÈ´Ù.
(6) ¸í·É¿¡¼´Â Äڵ尪 3a·ÎºÎÅÍ 40±îÁö 7 ÀÚ¸®¸¦ Â÷ÁöÇÏ°í °³ ¹ä¿¡ µµÅ丮°°ÀÌ
³¢¾î ÀÖ´Â 7 °³ÀÇ Æ¯¼ö¹®ÀÚ¸¦ ¹«½ÃÇϱâ À§ÇÏ¿© dl °ª¿¡ ´Ù½Ã 7À» º¸ÅÄ´Ù.
¸¶Áö¸· (7) ¸í·ÉÀº ¾ÕÀÇ ¸í·É (5)¿¡¼ Á¡ÇÁµÇ¾î ³Ñ¾î¿Â Äڵ尪 30 ³»Áö 39¿¡ ÇØ´çµÇ´Â
16Áø¼ö 0 ³»Áö 9¸¦ Ãâ·ÂÇϱ⵵ Çϰí, ¶Ç´Â ¾ÕÀÇ ¸í·É (6)±îÁö °ÅÃÄ ¿Â Äڵ尪 41
³»Áö 46¿¡ ÇØ´çµÇ´Â 16Áø¼ö a ³»Áö f¸¦ Ãâ·ÂÇϱ⵵ ÇÑ´Ù.
¹°·Ð, ¸í·É (1)¿¡¼ ÀúÀåÇØ µÐ ah °ª 02¸¦ ÂüÁ¶ÇÑ ÀÛ¾÷ÀÌ´Ù.
ÀÌ»óÀÇ ¼³¸íÀÌ ´Ù¼Ò ¾î·Á¿ì¸é, ±×³É ÀÐ°í ³Ñ¾î°¡±â ¹Ù¶õ´Ù.
³ªÁß¿¡ ´Ù½Ã º¸¸é ¿ÏÀüÈ÷ ÀÌÇØ°¡ µÉ °ÍÀÌ´Ù.
|