GAMEMING 2024. 7. 10. 01:46
728x90

 

 

[ ๋ช…๋ น์–ด ]

 

- ์ €๊ธ‰ ์–ธ์–ด์™€ ๊ณ ๊ธ‰ ์–ธ์–ด

 

 ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—๋Š” ์ปดํ“จํ„ฐ๋ฅผ ์œ„ํ•œ ์ €๊ธ‰ ์–ธ์–ด์™€ ์‚ฌ๋žŒ์„ ์œ„ํ•œ ๊ณ ๊ธ‰ ์–ธ์–ด๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ €๊ธ‰ ์–ธ์–ด๋Š” ๊ธฐ๊ณ„์— ์นœํ™”์ ์ธ ์–ธ์–ด๋กœ ๊ธฐ๊ณ„์–ด์™€ ์–ด์…ˆ๋ธ”๋ฆฌ์–ด ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ๊ธฐ๊ณ„์–ด๋Š” 0๊ณผ 1์˜ ๋ช…๋ น์–ด ๋น„ํŠธ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ช…๋ น์–ด ๋ชจ์Œ์ด๋ฉฐ, ์ด์ง„์ˆ˜๋กœ ๋˜์–ด ์žˆ์ง€๋งŒ ๊ฐ€๋…์„ฑ์„ ์œ„ํ•ด 16์ง„์ˆ˜๋กœ ํ‘œํ˜„๋˜๊ธฐ๋„ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ 0๊ณผ 1๋กœ ๋˜์–ด ์žˆ๋Š” ๊ฒƒ์€ ์‚ฌ๋žŒ์ด ๋ณด๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ์— ์–ด๋ ค์›€์ด ์—†์„๊นŒ? ์•„๋งˆ ๋งŽ์ด ํž˜๋“ค ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๋“ฑ์žฅํ•œ ๊ฒƒ์ด ์ €๊ธ‰ ์–ธ์–ด์™€ ๊ณ ๊ธ‰ ์–ธ์–ด ์‚ฌ์ด์˜ ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋‹ค. ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋Š” 0๊ณผ 1๋กœ ํ‘œํ˜„๋œ ๊ธฐ๊ณ„์–ด๋ฅผ ์ฝ๊ธฐ ํŽธํ•œ ์ƒํƒœ๋กœ ๋ฒˆ์—ญํ•œ ๊ฒƒ์ด๋‹ค. ์ด ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋Š” ์šฐ๋ฆฌ ๊ฐœ๋ฐœ์ž๋“ค์ด ์ž์ฃผ ๋ด์•ผ ํ•˜๋Š” ๊ด€์ฐฐ์˜ ๋Œ€์ƒ์ด๋‹ค. ๋ฐ˜๋ฉด ๊ณ ๊ธ‰ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ๋Š” ์‚ฌ๋žŒ์ด ์‚ฌ์šฉํ•˜๊ธฐ์— ํŽธ๋ฆฌํ•˜๊ฒŒ ๋˜์–ด ์žˆ์ง€๋งŒ, ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ €๊ธ‰ ์–ธ์–ด(๋ช…๋ น์–ด)๋กœ ๋ณ€ํ™˜๋˜์–ด์•ผ ํ•œ๋‹ค.

 

 ๊ณ ๊ธ‰ ์–ธ์–ด๊ฐ€ ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ฐ”๋€Œ๋Š” ๋ฐฉ์‹์—๋Š” ์ปดํŒŒ์ผ ๋ฐฉ์‹๊ณผ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐฉ์‹์ด ์žˆ๋‹ค. ์ปดํŒŒ์ผ ์–ธ์–ด๋Š” ์†Œ์Šค ์ฝ”๋“œ ์ „์ฒด๊ฐ€ ์ปดํŒŒ์ผ๋Ÿฌ์— ์˜ํ•ด ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜๋˜๋Š” ์–ธ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ํ•˜๋‚˜์˜ ๋„๊ตฌ์ด๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ „๋ฐ˜์ ์œผ๋กœ ๊ฒ€ํ† ํ•˜์—ฌ ๋ฌธ๋ฒ•์  ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋Š”์ง€, ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ์ธ์ง€ ๋“ฑ์„ ๋ถ„์„ํ•˜๊ณ , ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ €๊ธ‰ ์–ธ์–ด๋กœ ์ปดํŒŒ์ผํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ํ†ตํ•ด ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜๋œ ์ฝ”๋“œ๋ฅผ ๋ชฉ์  ์ฝ”๋“œ๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” C๋‚˜ C++์ด ์—ฌ๊ธฐ์— ํ•ด๋‹น๋œ๋‹ค. 

 ๋ฐ˜๋ฉด ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐฉ์‹์€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ์— ์˜ํ•ด ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ ํ•œ ์ค„์”ฉ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ํ•œ ์ค„์”ฉ ์‹คํ–‰๋˜๋Š” ์–ธ์–ด๋กœ ๋Œ€ํ‘œ์ ์œผ๋กœ ํŒŒ์ด์ฌ์ด ์—ฌ๊ธฐ์— ํ•ด๋‹นํ•œ๋‹ค. ์†Œ์Šค ์ฝ”๋“œ ์ „์ฒด๋ฅผ ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‹œ๊ฐ„(์ปดํŒŒ์ผ ์‹œ๊ฐ„)์„ ๊ธฐ๋‹ค๋ฆด ํ•„์š”๊ฐ€ ์—†๊ณ  N๋ฒˆ์งธ์— ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋”๋ผ๋„ ๊ทธ ์ „ ๊นŒ์ง€์˜ ์ฝ”๋“œ๋Š” ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ˆ˜ํ–‰๋œ๋‹ค. ๋‹จ์ ์€ ๋А๋ฆฌ๋‹ค๋Š” ์ ์ด๋‹ค.

 

 

 

- ๋ช…๋ น์–ด ๊ตฌ์กฐ

 

๋ช…๋ น์–ด๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์›€์ง์ด๊ณ  ์ปดํ“จํ„ฐ๋ฅผ ์ž‘๋™์‹œํ‚ค๋Š” ์ •๋ณด๋ผ๊ณ  ํ•˜์˜€๋‹ค. ์ด๊ฐ€ ์–ด๋–ป๊ฒŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋Š”์ง€ ๊ณต๋ถ€ํ•ด๋ณด์ž. ์šฐ์„  ์—ฐ์‚ฐ ์ฝ”๋“œ์™€ ์˜คํผ๋žœ๋“œ๋ถ€ํ„ฐ ๋‹ค๋ฃจ์–ด ๋ณด์ž.

 

 

๋ช…๋ น์–ด๋Š” '๋ฌด์—‡์„ ๋Œ€์ƒ์œผ๋กœ, ์–ด๋–ค ์ž‘๋™์„ ์ˆ˜ํ–‰ํ•˜๋ผ'๋ผ๋Š” ๊ตฌ์กฐ๋กœ ๋˜์–ด ์žˆ๊ธฐ์— ์ˆ˜ํ–‰ํ•  ์—ฐ์‚ฐ์— ํ•ด๋‹นํ•˜๋Š” ์—ฐ์‚ฐ ์ฝ”๋“œ์™€ ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ๋˜๋Š” ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜์ธ ์˜คํผ๋žœ๋“œ๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์˜คํผ๋žœ๋“œ๋Š” ์ฃผ๋กœ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜, ์ฆ‰ ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ๋ฅผ ๋‹ด๊ณ  ์žˆ๋Š”๋ฐ ํšจ์œจ์„ฑ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•˜๋‹ค. ์ปดํ“จํ„ฐ ๋ฉ”๋ชจ๋ฆฌ๋Š” ํ•œ์ •๋œ ์ž์›์œผ๋กœ, ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ์ €์žฅํ•˜๊ฒŒ ๋˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„๊ฐ€ ๋น ๋ฅด๊ณ  ๋น„ํšจ์œจ์ ์ผ ์ˆ˜ ์žˆ๋Š” ๋ฐ˜๋ฉด ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ์ €์žฅํ•˜๋ฉด ์ผ์ •ํ•œ ํฌ๊ธฐ์˜ ๋ฉ”๋ชจ๋ฆฌ๋งŒ ์‚ฌ์šฉํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ, ์—ฐ์‚ฐ ์‹œ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋งค๋ฒˆ ๋ฐ์ดํ„ฐ์˜ ๋ณต์‚ฌ๋‚˜ ์ด๋™์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์œ„์น˜๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๋™์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์–ด ์—ฐ์‚ฐ ๊ณผ์ •์ด ๋”์šฑ ํšจ์œจ์ ์ด๋‹ค. ์ด๋Ÿฐ ์ด์œ ๋“ค๋กœ, ์˜คํผ๋žœ๋“œ ํ•„๋“œ์—๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜๊ฐ€ ์ฃผ๋กœ ๋‹ด๊ธฐ๊ฒŒ ๋œ๋‹ค.

 

 

ํ•œ ์ฃผ์†Œ์— 16๋น„ํŠธ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜๋ฉด ์—ฐ์‚ฐ ์ฝ”๋“œ๊ฐ€ 4๋น„ํŠธ๋ผ ํ•˜๋ฉด ์˜คํผ๋žœ๋“œ ํ•„๋“œ๋Š” ํ•„๋“œ๋‹น 4๋น„ํŠธ ์ •๋„๋งŒ ๋‚จ๊ธฐ์— ํ‘œํ˜„ ๊ฐ€๋Šฅ ์ •๋ณด์ˆ˜๊ฐ€ 2^4๊ฐœ ๋ฐ–์— ์—†๋‹ค. ํ•˜์ง€๋งŒ ์˜คํผ๋žœ๋“œ ํ•„๋“œ ์•ˆ์— ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๊ฐ€ ๋‹ด๊ธด๋‹ค๋ฉด, ํ‘œํ˜„ ๊ฐ€๋Šฅ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๋Š” ๋ฉ”๋ชจ๋ฆฌ์˜ ์ฃผ์†Œ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋งŒํผ ์ปค์ง„๋‹ค.

 

์—ฐ์‚ฐ ์ฝ”๋“œ๋Š” ์ข…๋ฅ˜๊ฐ€ ๋งค์šฐ ๋งŽ๊ณ  CPU๋งˆ๋‹ค ๋‹ค๋ฅด์ง€๋งŒ, ํฌ๊ฒŒ ๋ฐ์ดํ„ฐ ์ „์†ก, ์‚ฐ์ˆ /๋…ผ๋ฆฌ ์—ฐ์‚ฐ, ์ œ์–ด ํ๋ฆ„ ๋ณ€๊ฒฝ, ์ž…์ถœ๋ ฅ ์ œ์–ด 4๊ฐ€์ง€๋กœ ๋‚˜๋‰œ๋‹ค. 

 

  • ๋ฐ์ดํ„ฐ ์ „์†ก
    • MOVE : ๋ฐ์ดํ„ฐ๋ฅผ ์˜ฎ๊ฒจ๋ผ
    • STORE : ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๋ผ
    • LOAD(FETCH) : ๋ฉ”๋ชจ๋ฆฌ์—์„œ CPU๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€๋ผ
    • PUSH : ์Šคํƒ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋ผ
    • POP : ์Šคํƒ์˜ ์ตœ์ƒ๋‹จ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€๋ผ
  • ์‚ฐ์ˆ /๋…ผ๋ฆฌ์—ฐ์‚ฐ
    • ADD/SUBTRACT/MULTIPLY/DIVIDE : ๋ง์…ˆ/๋บ„์…ˆ/๊ณฑ์…ˆ/๋‚˜๋ˆ—์…ˆ
    • INCREMENT/DECREMENT : ์˜คํผ๋žœ๋“œ์— 1์„ ๋”ํ•˜๋ผ/๋นผ๋ผ
    • AND/OR/NOT : ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋ผ
    • COMPARE: ๋‘ ๊ฐœ์˜ ์ˆซ์ž ๋˜๋Š” TRUE/FALSE ๊ฐ’์„ ๋น„๊ตํ•˜๋ผ
  • ์ œ์–ด ํ๋ฆ„ ๋ณ€๊ฒฝ
    • JUMP : ํŠน์ • ์ฃผ์†Œ๋กœ ์‹คํ–‰์ˆœ์„œ๋ฅผ ์˜ฎ๊ฒจ๋ผ
    • CONDITIONAL JUMP : ์กฐ๊ฑด์— ๋ถ€ํ•ฉํ•  ๋•Œ ํŠน์ • ์ฃผ์†Œ๋กœ ์‹คํ–‰ ์ˆœ์„œ๋ฅผ ์˜ฎ๊ฒจ๋ผ
    • HALT : ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰์„ ๋ฉˆ์ถฐ๋ผ
    • CALL : ๋˜๋Œ์•„์˜ฌ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•œ ์ฑ„ ํŠน์ • ์ฃผ์†Œ๋กœ ์‹คํ–‰ ์ˆœ์„œ๋ฅผ ์˜ฎ๊ฒจ๋ผ
    • RETURN : CALL์„ ํ˜ธ์ถœํ•  ๋•Œ ์ €์žฅํ–ˆ๋˜ ์ฃผ์†Œ๋กœ ๋Œ์•„๊ฐ€๋ผ
  • ์ž…์ถœ๋ ฅ ์ œ์–ด
    • READ(INPUT) : ํŠน์ • ์ž…์ถœ๋ ฅ ์žฅ์น˜๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด๋ผ
    • WRITE(OUTPUT) : ํŠน์ • ์ž…์ถœ๋ ฅ ์žฅ์น˜๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์จ๋ผ
    • START IO : ์ž…์ถœ๋ ฅ ์žฅ์น˜๋ฅผ ์‹œ์ž‘ํ•˜๋ผ
    • TEST IO : ์ž…์ถœ๋ ฅ ์žฅ์น˜์˜ ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๋ผ

 

 

 

- ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

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

 

  • ์ฆ‰์‹œ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹
    • ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์˜คํผ๋žœ์ฆˆ ํ•„๋“œ์— ์ง์ ‘ ๋ช…์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ํ˜•ํƒœ์˜ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹์ด๋‹ค. ๊ฐ„๋‹จํ•œ ์—ฐ์‚ฐ ๋ฐ ์ƒ์ˆ˜ ๊ฐ’ ์ฒ˜๋ฆฌ์— ์‚ฌ์šฉ๋˜๋ฉฐ ์žฅ์ ์œผ๋กœ๋Š” ๊ฐ„๋‹จํ•˜๊ณ  ๋น ๋ฅด๋‹ค๋Š” ์ ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ ์ œํ•œ์ ์ด๊ธฐ์— ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ๋ช…๋ น์–ด์— ํฌํ•จํ•  ์ˆ˜ ์—†๋‹ค.
  • ์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹
    • ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ์œ ํšจ ์ฃผ์†Œ ์ง์ ‘์ ์œผ๋กœ ๋ช…์‹œํ•œ๋‹ค. ์ด ์ฃผ์†Œ๋ฅผ ์ด์šฉํ•ด ์—ฐ์‚ฐ์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์œผ๋ฉฐ ์žฅ์ ์œผ๋กœ๋Š” ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ง€์ •ํ•˜๋ฏ€๋กœ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค์— ๋Œ€ํ•œ ์†๋„๊ฐ€ ๋น ๋ฅด๊ณ  ๋ฉ”๋ชจ๋ฆฌ ์œ„์น˜๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ณ„์‚ฐํ•ด์•ผ ํ•˜๋Š” ์ถ”๊ฐ€ ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ์—†๋‹ค๋Š” ์ ์ด๋‹ค. ํ•˜์ง€๋งŒ ์—ฐ์‚ฐ ์ฝ”๋“œ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์œ ํšจ์ฃผ์†Œ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ํฌ๊ธฐ๊ฐ€ ์ œํ•œ๋œ๋‹ค.
  • ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹
    • ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ์œ ํšจ ์ฃผ์†Œ์˜ ์ฃผ์†Œ๋ฅผ ๋ช…์‹œํ•จ์œผ๋กœ์จ ๋ฐ์ดํ„ฐ์˜ ์œ ํšจ ์ฃผ์†Œ๋ฅผ ์ฐพ๋Š” ์ง€์ • ๋ฐฉ์‹์ด๋‹ค. ์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹์— ๋น„ํ•ด ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์œ ํšจ ์ฃผ์†Œ์˜ ๋ฒ”์œ„๊ฐ€ ๋„“์–ด์ง„๋‹ค.
  • ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹
    • ๋ช…๋ น์–ด ๋‚ด๋ถ€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์ง์ ‘ ๋ช…์‹œํ•œ๋‹ค. ๋ ˆ์ง€์Šคํ„ฐ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์ด ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋น ๋ฅด๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋˜ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๊ณ ์ •๋œ ํฌ๊ธฐ์™€ ์ˆ˜์šฉ ๋Šฅ๋ ฅ์„ ๊ฐ–๊ณ  ์žˆ์–ด ํฐ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ์—” ๋ถ€์ ํ•ฉ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋ ˆ์ง€์Šคํ„ฐ ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹
    • ๋ฐ์ดํ„ฐ ์ž์ฒด๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ๊ณ  ํ•ด๋‹น ๋ฐ์ดํ„ฐ์˜ ์ฃผ์†Œ๋ฅผ ๋ ˆ์ง€์Šคํ„ฐ์— ์ €์žฅํ•œ๋‹ค. ์ด ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์ฃผ์†Œ๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” ํ˜•ํƒœ์ด๋‹ค. ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๋ฅผ ๋ ˆ์ง€์Šคํ„ฐ์— ์ €์žฅํ•˜๊ธฐ์— ๋ฐ์ดํ„ฐ ์œ„๋ฅผ ๋™์ ์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ถ”๊ฐ€์ ์ธ ๋ฉ”๋ชจ๋ฆฌ ์—‘์„ธ์Šค๊ฐ€ ํ•„์š”ํ•˜๊ธฐ์— ์„ฑ๋Šฅ๋ฉด์—์„œ๋Š” ๋‚˜์œ ์˜ํ–ฅ์ด ์žˆ๋‹ค.

 

[ ALU, FLAG, Control Unit ]

'

์ถœ์ฒ˜ โ˜ ์œ„ํ‚ค๋ฐฑ๊ณผ

 

 - ALU (Arithmetic Logic Unit)

  : ๋ ˆ์ง€์Šคํ„ฐ๋กœ๋ถ€ํ„ฐ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ›๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅํ•˜์—ฌ ์ œ์–ด์žฅ์น˜๋กœ๋ถ€ํ„ฐ ์–ด๋–ค ์ข…๋ฅ˜์˜ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ• ์ง€์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋ฐ›์•„ ์ด๋ฅผ ํ† ๋Œ€๋กœ ๊ณ„์‚ฐํ•˜๋Š” ์žฅ์น˜์ด๋‹ค. ALU๊ฐ€ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ๋ณธ์ ์ธ ์—ฐ์‚ฐ์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€๋กœ ํ•˜๋‚˜๋Š” ๋ง์…ˆ๊ณผ ๋บ„์…ˆ ๊ฐ™์€ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ด๊ณ , ๋‚˜๋จธ์ง€ ํ•˜๋‚˜๋Š” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ด๋‹ค.

 

 

- FLAG

 : ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ๋ถ€๊ฐ€ ์ •๋ณด๋กœ ๊ฐ ์˜์—ญ์ด ์ด์ง„์ˆ˜๋กœ ํ‘œํ˜„๋œ๋‹ค. ์ €๋ฒˆ ์‹œ๊ฐ„์— ์ด์ง„์ˆ˜๋กœ ํ‘œํ˜„๋œ ์ˆ˜๊ฐ€ ์Œ์ˆ˜์ธ์ง€ ์–‘์ˆ˜์ธ์ง€ ๊ตฌ๋ณ„ํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š๋‹ค๊ณ  ์„ค๋ช…ํ•˜์˜€๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ํ”Œ๋ž˜๊ทธ๊ฐ€ ๋ถ™๋Š”๋‹ค๊ณ  ํ–ˆ๋Š”๋ฐ ์–˜๋‹ค. ์ข…๋ฅ˜๋Š” 6๊ฐ€์ง€๋กœ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

 

  • ๋ถ€ํ˜ธ ํ”Œ๋ž˜๊ทธ : ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์˜ ๋ถ€ํ˜ธ
  • ์ œ๋กœ ํ”Œ๋ž˜๊ทธ : ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๊ฐ€ 0?
  • ์บ๋ฆฌ ํ”Œ๋ž˜๊ทธ : ์—ฐ์‚ฐ ๊ฒฐ๊ณผ์— ์˜ฌ๋ฆผ์ˆ˜ ํ˜น์€ ๋‚ด๋ฆผ์ˆ˜๊ฐ€ ๋ฐœ์ƒ?
  • ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ํ”Œ๋ž˜๊ทธ : ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ ๋ฐœ์ƒ?
  • ์ธํ„ฐ๋ŸฝํŠธ ํ”Œ๋ž˜๊ทธ : ์ธํ„ฐ๋ŸฝํŠธ ๊ฐ€๋Šฅ?
  • ์Šˆํผ๋ฐ”์ด์ € ํ”Œ๋ž˜๊ทธ : ์ปค๋„๋ชจ๋“œ? or ์‚ฌ์šฉ์ž ๋ชจ๋“œ?

 

- Control Unit (์ œ์–ด์žฅ์น˜)

 : ์ œ์–ด ์‹ ํ˜ธ๋ฅผ ๋‚ด๋ณด๋‚ด๊ณ  ๋ช…๋ น์–ด๋ฅผ ํ•ด์„ํ•˜๊ธฐ ์œ„ํ•œ ๋ถ€ํ’ˆ์œผ๋กœ ์—ฌ๊ธฐ์„œ ์ œ์–ด ์‹ ํ˜ธ๋ž€ ์ „๊ธฐ ์‹ ํ˜ธ์ด๋‹ค. ์ œ์–ด ์žฅ์น˜๋Š” ํด๋Ÿญ์ด๋ผ๋Š” ์ผ์ • ์ฃผ๊ธฐ์— ๋งž์ถฐ ๋ช…๋ น์–ด๋ฅผ ํ•ด์„ํ•œ๋‹ค. ์ œ์–ด ์žฅ์น˜๋Š” ํ•ด์„ํ•  ๋ช…๋ น์–ด, ํด๋Ÿญ, ํ”Œ๋ž˜๊ทธ๋ฅผ ๋ฐ›์•„ ๋“ค์—ฌ ๊ทธ์— ๋”ฐ๋ฅธ ์ œ์–ด ์‹ ํ˜ธ๋ฅผ ๋ ˆ์ง€์Šคํ„ฐ, ALU, ๋ฉ”๋ชจ๋ฆฌ, ์ž…์ถœ๋ ฅ ์žฅ์น˜ ๋“ฑ์œผ๋กœ ์ „๋‹ฌํ•œ๋‹ค.

 

 ์—ฌ๊ธฐ์„œ์˜ ํด๋Ÿญ์€ ๋‹ค์Œ ์‹œ๊ฐ„์— ์ž์„ธํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๋„๋ก ํ•˜๊ฒ ๋‹ค.