๊ด€๋ฆฌ ๋ฉ”๋‰ด

0105

์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ๋Šฅ์‚ฌ 19. ์ฃผ์†Œ์ง€์ • ๋ฐฉ์‹ ๋ณธ๋ฌธ

๐Ÿ“‹ ์ž๊ฒฉ์ฆ/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ๋Šฅ์‚ฌ

์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ๋Šฅ์‚ฌ 19. ์ฃผ์†Œ์ง€์ • ๋ฐฉ์‹

๊ณต๋ฐฑ์˜ค 2025. 3. 21. 12:36
728x90
๋ฐ˜์‘ํ˜•

๋ช…๋ น์–ด ํ˜•์‹๊ณผ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

1. ๋ช…๋ น์–ด ํ˜•์‹ (Instruction Format)

์ปดํ“จํ„ฐ์˜ ๋ช…๋ น์–ด๋Š” ํฌ๊ฒŒ **OP-Code(๋ช…๋ น๋ถ€)**์™€ **Operand(์ž๋ฃŒ๋ถ€)**๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. Operand์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด 4๊ฐ€์ง€ ๋ช…๋ น์–ด ํ˜•์‹์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

1.1 3์ฃผ์†Œ ๋ช…๋ น์–ด (3 Address Instruction)

  • Operand๋ถ€๊ฐ€ 3๊ฐœ๋กœ ๊ตฌ์„ฑ๋˜๋Š” ๋ช…๋ น์–ด ํ˜•์‹์ž…๋‹ˆ๋‹ค.
  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ(GPR)๋ฅผ ๊ฐ€์ง„ ์ปดํ“จํ„ฐ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ ํ›„์—๋„ ์ž…๋ ฅ๋œ ์ž๋ฃŒ๊ฐ€ ๋ณด์กด๋ฉ๋‹ˆ๋‹ค.
  • ํ•˜์ง€๋งŒ ๋ช…๋ น์–ด์˜ ๊ธธ์ด๊ฐ€ ๊ธธ์–ด์ง€๋Š” ๋‹จ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

1.2 2์ฃผ์†Œ ๋ช…๋ น์–ด (2 Address Instruction)

  • Operand๋ถ€๊ฐ€ 2๊ฐœ๋กœ ๊ตฌ์„ฑ๋œ ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ธ ๋ช…๋ น์–ด ํ˜•์‹์ž…๋‹ˆ๋‹ค.
  • ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ๊ฐ€์ง„ ์ปดํ“จํ„ฐ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋Š” ์ฃผ๋กœ ์ฒซ ๋ฒˆ์งธ Operand์— ์ €์žฅ๋˜๋ฏ€๋กœ, ์ฒซ ๋ฒˆ์งธ Operand์˜ ๊ธฐ์กด ๊ฐ’์ด ์†์‹ค๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1.3 1์ฃผ์†Œ ๋ช…๋ น์–ด (1 Address Instruction)

  • Operand๋ถ€๊ฐ€ 1๊ฐœ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • **๋ˆ„์‚ฐ๊ธฐ(Accumulator)**๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

1.4 0์ฃผ์†Œ ๋ช…๋ น์–ด (0 Address Instruction)

  • Operand๋ถ€ ์—†์ด OP-Code๋ถ€๋งŒ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • **์Šคํƒ(Stack)**์„ ์ด์šฉํ•˜์—ฌ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ ์‹œ, ์Šคํƒ์— ์—ฐ์‚ฐ์ž์™€ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฝ์ž…(Push)ํ•˜๊ณ  ์—ฐ์‚ฐ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์Šคํƒ์— ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ ๊ณผ์ •์—์„œ ์›๋ž˜์˜ ์ž๋ฃŒ๊ฐ€ ๋‚จ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

2. ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ (Addressing Modes)

๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐฉ์‹์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

2.1 ์•”์‹œ์  ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ (Implied Mode)

  • ๋ช…๋ น์–ด์— ์ฃผ์†Œ ์ง€์ • ํ•„๋“œ๊ฐ€ ์—†์œผ๋ฉฐ, ์Šคํƒ์˜ Top ํฌ์ธํ„ฐ๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” Operand๋ฅผ ์ž๋™์œผ๋กœ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.

2.2 ์ฆ‰์‹œ์  ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ (Immediate Mode)

  • ๋ช…๋ น์–ด ์ž์ฒด์— Operand(์‹ค์ œ ๋ฐ์ดํ„ฐ)๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฐธ์กฐํ•  ํ•„์š” ์—†์ด CPU์—์„œ ์ง์ ‘ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์‹คํ–‰ ์†๋„๊ฐ€ ๋น ๋ฆ…๋‹ˆ๋‹ค.

2.3 ์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ (Direct Mode)

  • ๋ช…๋ น์–ด์˜ ์ฃผ์†Œ๋ถ€(Operand)๊ฐ€ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ ์ฐธ์กฐ ํšŸ์ˆ˜๋Š” 1ํšŒ์ž…๋‹ˆ๋‹ค.

2.4 ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ (Indirect Mode)

  • ๋ช…๋ น์–ด์˜ ์ฃผ์†Œ๋ถ€(Operand)์— ์ €์žฅ๋œ ๊ฐ’์ด ๋˜ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.
  • ๋ฉ”๋ชจ๋ฆฌ ์ฐธ์กฐ ํšŸ์ˆ˜๊ฐ€ ์ตœ์†Œ 2ํšŒ ์ด์ƒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

2.5 ๊ณ„์‚ฐ์— ์˜ํ•œ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

Operand์™€ CPU์˜ ํŠน์ • ๋ ˆ์ง€์Šคํ„ฐ ๊ฐ’์„ ๋”ํ•˜์—ฌ ์œ ํšจ ์ฃผ์†Œ๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

  • ์ƒ๋Œ€ ์ฃผ์†Œ (Relative Mode) : ์œ ํšจ ์ฃผ์†Œ = ๋ช…๋ น์–ด ์ฃผ์†Œ๋ถ€ + PC (ํ˜„์žฌ ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ ๊ฐ’)
  • ๋ฒ ์ด์Šค ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ (Base Register Mode) : ์œ ํšจ ์ฃผ์†Œ = ๋ช…๋ น์–ด ์ฃผ์†Œ๋ถ€ + Base Register (ํ”„๋กœ๊ทธ๋žจ ์žฌ๋ฐฐ์น˜์— ์‚ฌ์šฉ๋จ)
  • ์ธ๋ฑ์Šค ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ (Index Register Mode) : ์œ ํšจ ์ฃผ์†Œ = ๋ช…๋ น์–ด ์ฃผ์†Œ๋ถ€ + Index Register (์ˆœ์ฐจ์ ์ธ ์ฃผ์†Œ ์ง€์ •์— ์œ ๋ฆฌ)

3. ์ ˆ๋Œ€ ์ฃผ์†Œ vs ์ƒ๋Œ€ ์ฃผ์†Œ

์ฃผ์†Œ๋ฅผ ์‹ค์ œ ๊ธฐ์–ต ๊ณต๊ฐ„๊ณผ ์—ฐ๊ด€์‹œํ‚ค๋Š” ๋ฐฉ๋ฒ•์— ๋”ฐ๋ผ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค.

3.1 ์ ˆ๋Œ€ ์ฃผ์†Œ (Absolute Address)

  • ์ฃผ์–ด์ง„ ์ฃผ์†Œ๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์‹ค์ œ ๋ฌผ๋ฆฌ์  ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.
  • ๊ธฐ์–ต์žฅ์น˜์˜ ์‹œ์ž‘๋ถ€ํ„ฐ ์—ฐ์†์ ์œผ๋กœ 16์ง„์ˆ˜ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค.

3.2 ์ƒ๋Œ€ ์ฃผ์†Œ (Relative Address)

  • ๊ธฐ์ค€ ์ฃผ์†Œ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๋ณ€์œ„(Offset) ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • ์ ˆ๋Œ€ ์ฃผ์†Œ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ์‹ค์ œ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

แ„Œแ…ฅแ†ผแ„‡แ…ฉแ„Žแ…ฅแ„…แ…ตแ„€แ…ตแ„‚แ…ณแ†ผแ„‰แ…ก แ„€แ…ขแ„‚แ…งแ†ท.pdf
0.31MB

728x90