์ƒˆ์†Œ์‹

Languages/Assembly

[์–ด์…ˆ๋ธ”๋ฆฌ์–ด] ๋ ˆ์ง€์Šคํ„ฐ

  • -
๋ฐ˜์‘ํ˜•

์˜ค๋Š˜์€ ๋ ˆ์ง€์Šคํ„ฐ์— ๋Œ€ํ•œ ํฌ์ŠคํŒ…์„ ํ•ด๋ณด๋ ค๊ณ  ํ•ด์š”.

์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋ฅผ ๊ณต๋ถ€ํ•˜๋‹ค๋ณด๋ฉด ax,ah ๋“ฑ ๋งŽ์€ ๋ ˆ์ง€์Šคํ„ฐ๋“ค์ด ๋“ฑ์žฅ์„ ํ•˜๋Š”๋ฐ,

์ €๋Š” ์ด ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ œ๋Œ€๋กœ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๊ณ  ์žˆ์—ˆ๊ธฐ๋•Œ๋ฌธ์—

์ œ๊ฐ€ ์™„๋ฒฝํžˆ ์•Œ๊ณ ์ž ์ด๊ธ€์„ ํฌ์ŠคํŒ… ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ •์˜,์ข…๋ฅ˜๋“ฑ์„ ์ œ๋Œ€๋กœ ํŒŒ์•…ํ•ด๋ด…์‹œ๋‹ค!๐Ÿƒ‍โ™€๏ธ๐Ÿƒ‍โ™€๏ธ


๋ ˆ์ง€์Šคํ„ฐ๋ž€?

๋ ˆ์ง€์Šคํ„ฐ(processor register) ๋Š” ์ปดํ“จํ„ฐ์˜ ํ”„๋กœ์„ธ์„œ ๋‚ด์—์„œ ์ž๋ฃŒ๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ์•„์ฃผ ๋น ๋ฅธ ๊ธฐ์–ต ์žฅ์†Œ์ด๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ํ˜„์žฌ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰์ค‘์ธ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. 

๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ณ„์ธต์˜ ์ตœ์ƒ์œ„์— ์œ„์น˜ํ•˜๋ฉฐ, ๊ฐ€์žฅ ๋น ๋ฅธ ์†๋„๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ฉ”๋ชจ๋ฆฌ์ด๋‹ค. ์ตœ์‹  ํ”„๋กœ์„ธ์„œ์—์„œ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋Œ€๊ฐœ ๋ ˆ์ง€์Šคํ„ฐ ํŒŒ์ผ๋กœ ๊ตฌํ˜„๋˜์ง€๋งŒ, ๊ณผ๊ฑฐ์—๋Š” ํ”Œ๋ฆฝํ”Œ๋กญ๋งˆ๊ทธ๋„คํ‹ฑ ์ฝ”์–ด๋ฐ•๋ง‰ ํ•„๋ฆ„ ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ์œผ๋กœ ๊ตฌํ˜„๋˜๊ธฐ๋„ ํ–ˆ๋‹ค.

๋Œ€๋ถ€๋ถ„์˜ ํ˜„๋Œ€ ํ”„๋กœ์„ธ์„œ๋Š” ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ ˆ์ง€์Šคํ„ฐ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์˜ฎ๊ฒจ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•œ ํ›„ ๊ทธ ๋‚ด์šฉ์„ ๋‹ค์‹œ ๋ ˆ์ง€์Šคํ„ฐ์—์„œ ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ๋กœ ์ €์žฅํ•˜๋Š” ๋กœ๋“œ-์Šคํ† ์–ด ์„ค๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. ์ถœ์ฒ˜ : ๊ตฌ๊ธ€ ์œ„ํ‚ค๋ฐฑ๊ณผ

 

๋ ˆ์ง€์Šคํ„ฐ ๋ฐ์ดํ„ฐ ๋‹จ์œ„
  • BIT : ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ์ž‘์€ ๋‹จ์œ„. (0๊ณผ 1๋กœ ๊ตฌ๋ถ„๋จ)
  • BYTE : 8๊ฐœ์˜ Bit๊ฐ€ ๋ชจ์ด๋ฉด 1byte๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค 0xFF(255)๊นŒ์ง€ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • WORD : 2๊ฐœ์˜ byte๊ฐ€ ๋ชจ์ด๋ฉด ์›Œ๋“œ๋ผ ๋ถ€๋ฅธ๋‹ค. 0xFFFF(65535)๊นŒ์ง€ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
  • DOUBLE WORD(=DWORD) : 2๊ฐœ์˜ word๊ฐ€ ๋ชจ์ด๋ฉด ๋”๋ธ”์›Œ๋“œ๋ผ ํ‘œํ˜„, 0xFFFFFFFF(์•ฝ 42์–ต) ๊นŒ์ง€ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•จ
  • QWORD(qword) : 64bit ์ฆ‰ 8byte๋ฅผ ํ‘œํ˜„

 

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

๊ทธ์™ธ์˜ ๋ ˆ์ง€์Šคํ„ฐ๋“ค [์„ธ๋ถ€์‚ฌํ•ญ]

ํ”„๋กœ๊ทธ๋žจ ์นด์šดํ„ฐ, ํ”„๋กœ๊ทธ๋žจ ๊ณ„์ˆ˜๊ธฐ ๋‹ค์Œ๋ฒˆ์— ์‹คํ–‰ํ•  ๋ช…๋ น์–ด์˜ ๋ฒˆ์ง€๋ฅผ ๊ธฐ์–ตํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋กœ ๋ถ„๊ธฐ ๋ช…๋ น์ด ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ ๊ทธ ๋ชฉ์ ์ง€ ์ฃผ์†Œ๋กœ ๊ฐฑ์‹ ๋œ๋‹ค
๋ˆ„์‚ฐ๊ธฐ ์—ฐ์‚ฐ๋œ ๊ฒฐ๊ณผ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ ์ €์žฅํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋กœ ์—ฐ์‚ฐ์˜ ์ค‘์‹ฌ์ด ๋˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ
์ƒํƒœ ๋ ˆ์ง€์Šคํ„ฐ(Status Register), ํ”Œ๋ž˜๊ทธ ๋ ˆ์ง€์Šคํ„ฐ

์˜ค๋ฒ„ํ”Œ๋กœ, ์–ธ๋”ํ”Œ๋กœ, ์ž๋ฆฌ์˜ฌ๋ฆผ, ๊ณ„์‚ฐ์ƒํƒœ, ์ธํ„ฐ๋ŸฝํŠธ ๋“ฑ์˜ PSW๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ

์‹œํ”„ํŠธ ๋ ˆ์ง€์Šคํ„ฐ

์ €์žฅ๋œ ๊ฐ’์„ ์™ผ์ชฝ ๋˜๋Š” ์˜ค๋ฅธ์ชฝ์œผ๋กœ 1Bit์”ฉ ์ž๋ฆฌ๋ฅผ ์ด๋™์‹œํ‚ค๋Š” ๋ ˆ์ง€์Šคํ„ฐ์ด๋ฉฐ 2๋ฐฐ ๊ธธ์ด ๋ ˆ์ง€์Šคํ„ฐ๋ผ๊ณ  ํ•จ

๋ฐ์ดํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ 

์—ฐ์‚ฐ์— ์‚ฌ์šฉ๋  ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ์–ตํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ์ž…๋‹ˆ๋‹ค.

๋ฉ”์ด์ € ์Šคํ…Œ์ดํ„ฐ์Šค ๋ ˆ์ง€์Šคํ„ฐ(Major Status Register) 

CPU์˜ ๋ฉ”์ด์ € ์ƒํƒœ๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ์ž…๋‹ˆ๋‹ค. (๋ฉ”์ด์ € ์ƒํƒœ๋ž€ CPU์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๋งํ•˜๋Š”๊ฒƒ์œผ๋กœ ์ธ์ถœ, ๊ฐ„์ ‘, ์‹คํ–‰, ์ธํ„ฐ๋ŸฝํŠธ ์ƒํƒœ๊ฐ€ ์žˆ๋‹ค)

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

์œ„์— ์ ์–ด๋†“์€ ๋ ˆ์ง€์Šคํ„ฐ์™ธ์—๋„ ์ •๋ง ๋‹ค์–‘ํ•œ ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ์กด์žฌํ•˜๋Š”๋ฐ

์‹ค์ œ ์šฐ๋ฆฌ๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋Š” 

๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ, ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ, ์ปจํŠธ๋กค ๋ ˆ์ง€์Šคํ„ฐ 3๊ฐ€์ง€๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

(์ด ์„ธ๊ฐœ ์™ธ์— ์ž์ฃผ ๋“ฑ์žฅํ•˜๋Š” "E-flag ๋ ˆ์ง€์Šคํ„ฐ")

๋‚˜๋จธ์ง€ ๋ ˆ์ง€์Šคํ„ฐ๋“ค์€ ๊ทนํžˆ ๋นˆ๋„๊ฐ€ ๋‚ฎ๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•  ์ผ์ด ์—†๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋“ค์ด๋ผ๊ณ  ํ•˜๋„ค์š”!

ํ•˜์ง€๋งŒ ์ €๋Š” ์ด์ค‘์—์„œ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ์™€ ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ๋งŒ ์•Œ์•„๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค!

๋‚˜๋จธ์ง€ ํ•„์š”ํ•œ ๋ถ€๋ถ„์€ ๋”ฐ๋กœ ๋” ๊ณต๋ถ€ํ•ด๋ณด๋ ค๊ตฌ์š” ใ… ใ…  ์•„์ง ์„ค๋ช…ํ•  ๋Šฅ๋ ฅ์ด ๋งŽ์ด ๋ถ€์กฑํ•œ ๊ฒƒ ๊ฐ™๋„ค์š”..

๊ทธ๋Ÿผ ์‹œ์ž‘ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


1. ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ(General Purpose Register)

๋ฒ”์šฉ๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋ฐ์ดํ„ฐ์™€ ์ฃผ์†Œ๋ฅผ ๋ชจ๋‘ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ง€์Šคํ„ฐ๋กœ ๊ฐ€์žฅ ์ž์ฃผ ์“ฐ์ด๋ฉฐ, ๊ฐ€์žฅ ํ”ํ•œ ๋ ˆ์ง€์Šคํ„ฐ ์ž…๋‹ˆ๋‹ค.

์ƒ์ˆ˜๋‚˜ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•  ๋•Œ ์“ฐ์ด๊ธฐ๋„ ํ•˜๊ณ  ํŠน์ˆ˜ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๊ธฐ๋„ ํ•˜์ฃ .

(๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์šด์˜์ฒด์ œ ๋ชจ๋“œ ๋ณ„๋กœ ๊ฐฏ์ˆ˜์™€ ํฌ๊ธฐ๊ฐ€ ๋‹ค๋ฅด๋‹ค๊ณ  ํ•œ๋‹ค.)

์œ„์— ์‚ฌ์ง„์—์„œ ๋ณด๋ฉด ์–ด๋ ค์›Œ์„œ ์ดํ•ด๊ฐ€ ์ž˜ ์•ˆ๋˜์‹ค ๊ฒƒ ๊ฐ™์•„ ์ž์„ธํžˆ ์•„๋ž˜ ๊ทธ๋ ค๋ดค์Šต๋‹ˆ๋‹ค.

๋จผ์ € ์œ„์— ์‚ฌ์ง„์€ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ์˜ ์ „์ฒด์ ์ธ ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค. (IA-32e ๋ชจ๋“œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค,)

 

๊ทธ์ค‘ ์ œ๊ฐ€ ๋นจ๊ฐ„์ƒ‰์œผ๋กœ ๋„ค๋ชจ ํ‘œ์‹œ๋ฅผ ํ•ด๋‘” ๊ฒƒ์ด "์‚ฐ์ˆ  ์—ฐ์‚ฐ ๋ ˆ์ง€์Šคํ„ฐ" ์ž…๋‹ˆ๋‹ค.

๊ทธ ๋ฐ‘์— ์ฃผํ™ฉ์ƒ‰ ํ‘œ์‹œ๋Š” "์ธ๋ฑ์Šค ๋ ˆ์ง€์Šคํ„ฐ" ์ด๊ณ 

๋…ธ๋ž€์ƒ‰ ํ‘œ์‹œ๋Š” "ํฌ์ธํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ" ์ž…๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๋ณด์‹œ๋ฉด ์กฐ๊ธˆ ๋” ์ดํ•ด๊ฐ€ ์ž˜ ๋˜์‹œ์ฃ !?

๊ฐ ๋ ˆ์ง€์Šคํ„ฐ์˜ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ํ•œ๋ˆˆ์— ๋ณด๊ธฐ ํŽธํ•˜๋„๋ก ํ‘œ๋กœ ์ž‘์„ฑํ•ด ๋ณด์•˜์–ด์š”, 

 

1-1) ์‚ฐ์ˆ  ์—ฐ์‚ฐ ๋ ˆ์ง€์Šคํ„ฐ

1-2) ์ธ๋ฑ์Šค ๋ ˆ์ง€์Šคํ„ฐ

1-3) ํฌ์ธํ„ฐ ๋ ˆ์ง€์Šคํ„ฐ

์ด๋ ‡๊ฒŒ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ 

๋ฒ”์šฉ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์šด์˜ ๋ชจ๋“œ์— ๋”ฐ๋ผ ์ผ์ •ํ•œ ๊ทœ์น™์„ ๊ฐ€์ง€๋ฉฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. 

(์ ‘๋‘์‚ฌ) R = 64bit

(์ ‘๋‘์‚ฌ) E = 32bit

//x84-64ํ”„๋กœ์„ธ์„œ์—์„œ ์ถ”๊ฐ€๋œ ๋ฒ”์šฉ ๋ ˆ์ง€์Šคํ„ฐ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜๋‹ˆ ์ž์„ธํžˆ ๊ณต๋ถ€ํ•ด๋ณด๊ณ  ์‹ถ์œผ์‹  ๋ถ„๋“ค์€ ๋” ์•Œ์•„๋ด์ฃผ์„ธ์š”!

 

๋‹ค์Œ์œผ๋กœ๋Š” ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

2. ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ(Segment Register)

์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ํ˜„์žฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ฃผ์†Œ๋ฅผ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด,

์„ธ๊ทธ๋จผํŠธ ๋””์Šคํฌ๋ฆฝํ„ฐ ํ…Œ์ด๋ธ”(GDT, Global Descriptor Table์— ์กด์žฌ)์˜ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค!

๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. (++์ ‘๊ทผ ๊ถŒํ•œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€๋จ)

์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด 16bit๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•˜๋„ค์š”:: ํ™•์žฅ ํ•˜์ง€ ์•Š๊ณ !

ํ•˜์—ฌํŠผ!

์ด ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ๋Š” 6๊ฐœ์˜ ์ข…๋ฅ˜๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋Š”๋ฐ

๋ชจ๋‘ ๊ณตํ†ต์˜ ์š”์†Œ๋กœ index์™€ Tl, RPL๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.

 

2-1) ์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ ์ข…๋ฅ˜

์ด๋ ‡๊ฒŒ ๊ฐ ๋ ˆ์ง€์Šคํ„ฐ์˜ ์—ญํ• ์„ ์ ์–ด๋†“์•˜์Šต๋‹ˆ๋‹ค.

์„ธ๊ทธ๋จผํŠธ ๋ ˆ์ง€์Šคํ„ฐ๋Š” ์„ธ๊ทธ๋จผํ…Œ์ด์…˜๊ณผ ๊ด€๋ จ์ด ์žˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ ๊ทธ๊ฑด ๋‹ค์Œ์— ํฌ์ŠคํŒ… ํ•ด๋ณผ๊ป˜์š”ใ… ใ… 

 

์—ฌ๊ธฐ๊นŒ์ง€! ์˜ค๋Š˜์€ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์•Œ์•„๋ณด์•˜๋Š”๋ฐ์š”!

๋ ˆ์ง€์Šคํ„ฐ๋Š” ๋„ˆ๋ฌด ๊นŠ์€ ํ•™๋ฌธ์ธ ๊ฒƒ...๊ฐ™์•„์š”

์–ด๋–ป๊ฒŒ ์ด๋ฆฌ ์–‘์ด ๋งŽ์€์ง€..^^

๋‹ค๋“ค ์ฐจ๊ทผ์ฐจ๊ทผ ํ•˜๋‚˜์”ฉ ๊ณต๋ถ€ํ•ด๋ด…์‹œ๋‹ค.!

๋ฐ˜์‘ํ˜•
Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.