๐Ÿ‘ฉ‍๐Ÿ’ป ์•Œ๊ณ ๋ฆฌ์ฆ˜/๐ŸŽ›๏ธ ์ปดํ“จํ„ฐ ๊ตฌ์กฐ & OS

[ํ˜ผ๊ณตํ•™์Šต๋‹จ 12๊ธฐ] 1์žฅ ~ 3์žฅ, ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด

์˜ค๋ธŒ ๐Ÿง™‍โ™‚๏ธ 2024. 7. 7. 12:19

[ 1์žฅ ]

์ปดํ“จํ„ฐ๋Š” 0๊ณผ 1๋กœ ํ‘œํ˜„๋œ ๋ฐ์ดํ„ฐ๋งŒ์„ ์ดํ•ดํ•œ๋‹ค.

์ด์ฒ˜๋Ÿผ 0๊ณผ 1๋กœ  ํ‘œํ˜„๋˜๋Š” ์ •๋ณด์—๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด๊ฐ€ ์žˆ๋‹ค.

 

( ex )

cat.jpg -> ๋ฐ์ดํ„ฐ

usb์— cat.jpg๋ฅผ ์ €์žฅํ•˜๋ผ -> ๋ช…๋ น์–ด

 

์ปดํ“จํ„ฐ์˜ ํ•ต์‹ฌ ์žฅ์น˜๋Š”,

(1)์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜(CPU) / (2)์ฃผ๊ธฐ์–ต์žฅ์น˜(๋ฉ”๋ชจ๋ฆฌ) / (3)๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜ / (4)์ž…์ถœ๋ ฅ์žฅ์น˜

(+)

์ฃผ๊ธฐ์–ต์žฅ์น˜๋Š” RAM / ROM ์ด ์žˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๋ผ ํ•จ์€ ๋ณดํ†ต RAM์„ ๋งํ•œ๋‹ค.

 

(1) ์ค‘์•™์ฒ˜๋ฆฌ์žฅ์น˜(CPU)

๋ช…๋ น์–ด ๋ฐ›๊ณ , ๋ฐ›์€ ๋ช…๋ น์–ด ํ•ด์„ํ•˜๊ณ  ์‹คํ–‰๊นŒ์ง€ ํ•˜๋Š” ์ปดํ“จํ„ฐ์˜ ๋‘๋‡Œ

ํ•ต์‹ฌ ๋‚ด๋ถ€ ๊ตฌ์„ฑ : (1)์‚ฐ์ˆ ๋…ผ๋ฆฌ์—ฐ์‚ฐ์žฅ์น˜(ALU), (2)๋ ˆ์ง€์Šคํ„ฐ, (3)์ œ์–ด์žฅ์น˜

(1)์‚ฐ์ˆ ๋…ผ๋ฆฌ์—ฐ์‚ฐ์žฅ์น˜(ALU)

๊ณ„์‚ฐํ•˜๋Š” ๋ถ€ํ’ˆ

(2)๋ ˆ์ง€์Šคํ„ฐ

CPU ๋‚ด๋ถ€ ์ž‘์€ ์ž„์‹œ ์ €์žฅ ์žฅ์น˜

์‹คํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ฐ’๋“ค์„ ์ž„์‹œ๋กœ ์ €์žฅ

CPU ์•ˆ์—๋Š” ๋‹ค๋ฅธ ์ด๋ฆ„๊ณผ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ž˜์ง€์Šคํ„ฐ๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ ์กด์žฌ

(3)์ œ์–ด์žฅ์น˜

์ œ์–ด์‹ ํ˜ธ๋ฅผ ๋‚ด๋ณด๋‚ด๊ณ  ๋ช…๋ ์–ด๋ฅผ ํ•ด์„

 

(2) ์ฃผ๊ธฐ์–ต์žฅ์น˜(๋ฉ”๋ชจ๋ฆฌ)

ํ˜„์žฌ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์˜ ๋ช…๋ น์–ด์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ถ€ํ’ˆ์œผ๋กœ,

ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

 

์ปดํ“จํ„ฐ๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ž‘๋™ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์† ๋ช…๋ น์–ด์™€ ๋ฐ์ดํ„ฐ์˜ ์œ„์น˜๊ฐ€ ์ •๋ˆ๋˜์–ด์žˆ์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํšจ์œจ์ ์ธ ์ ‘๊ทผ์„ ์œ„ํ•ด [์ฃผ์†Œ]์˜ ๊ฐœ๋…์ด ์‚ฌ์šฉ๋œ๋‹ค. 

 

(3)๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜

๋ฉ”๋ชจ๋ฆฌ๋Š” ๊ฐ€๊ฒฉ์ด ๋น„์‹ธ ์ €์žฅ ์šฉ๋Ÿ‰์ด ์ ๊ณ , ์ „์›์ด ๊บผ์ง€๋ฉด ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์žƒ์–ด๋ฒ„๋ฆฐ๋‹ค.

-> ๋ฉ”๋ชจ๋ฆฌ๋ณด๋‹ค ํฌ๊ณ , ์ €์žฅ๋œ ๋‚ด์šฉ์„ ์žƒ์ง€ ์•Š๋Š” ๋ณด์กฐ์žฅ์น˜์˜ ํ•„์š”์„ฑ๊ณผ ํ•จ๊ป˜ ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜๊ฐ€ ๋“ฑ์žฅ

( ex )

ํ•˜๋“œ๋””์Šคํฌ, SSD, DVD, USB ๋“ฑ

 

(4)์ž…์ถœ๋ ฅ์žฅ์น˜

๋งˆ์ดํฌ, ์Šคํ”ผ์ปค์ฒ˜๋Ÿผ ์ปดํ“จํ„ฐ ์™ธ๋ถ€์— ์—ฐ๊ฒฐ๋˜์–ด ๋‚ด๋ถ€์™€ ์ •๋ณด ๊ตํ™˜ํ•˜๋Š” ์žฅ์น˜

 

๋ฒ„์Šค

์œ„ 4๊ฐ€์ง€ ํ•ต์‹ฌ ๋ถ€ํ’ˆ์€ ๋ฉ”์ธ๋ณด๋“œ(๋งˆ๋”๋ณด๋“œ)์— ์—ฐ๊ฒฐ๋œ๋‹ค.

๋ฉ”์ธ๋ณด๋“œ์— ์—ฐ๊ฒฐ๋œ ๋ถ€ํ’ˆ๋“ค์ด ์„œ๋กœ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›๊ธฐ ์œ„ํ•ด ๋ฒ„์Šค(BUS)๋ผ๋Š” ํ†ต๋กœ๋ฅผ ์ด์šฉํ•œ๋‹ค.

์‹œ์Šคํ…œ ๋ฒ„์Šค๊ฐ€ ํ•ต์‹ฌ์ด๋ฉฐ, ์ด๋Š” ์ฃผ์†Œ ๋ฒ„์Šค, ๋ฐ์ดํ„ฐ ๋ฒ„์Šค, ์ œ์–ด ๋ฒ„์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.

51P 3๋ฒˆ
ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ [๋ฉ”๋ชจ๋ฆฌ]์— ์ €์žฅ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

 

[ 2์žฅ ]

๋น„ํŠธ

0,1๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ •๋ณด์˜ ๋‹จ์œ„ 

n๋น„ํŠธ๋Š” (2^n)๊ฐœ์˜ ์ •๋ณด๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

๋‹จ์œ„

๋ฐ”์ดํŠธ -> 8๊ฐœ ๋น„ํŠธ๋ฅผ ๋ฌถ์€ ๊ฒƒ (2^8)

ํ‚ฌ๋กœ๋ฐ”์ดํŠธ -> 1๋ฐ”์ดํŠธ 1000๊ฐœ๋ฅผ ๋ฌถ์€ ๊ฒƒ (2^8^1000)

๋ฉ”๊ฐ€๋ฐ”์ดํŠธ -> 1ํ‚ฌ๋กœ๋ฐ”์ดํŠธ 1000๊ฐœ๋ฅผ ๋ฌถ์€ ๊ฒƒ

๊ธฐ๊ฐ€๋ฐ”์ดํŠธ -> 1๋ฉ”๊ฐ€๋ฐ”์ดํŠธ 1000๊ฐœ๋ฅผ ๋ฌถ์€ ๊ฒƒ

ํ…Œ๋ผ๋ฐ”์ดํŠธ  -> 1๊ธฐ๊ฐ€๋ฐ”์ดํŠธ๋ฅผ 1000๊ฐœ ๋ฌถ์€ ๊ฒƒ

 

์ด์ง„๋ฒ•

0,1๋กœ ๋ชจ๋“  ์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•

์ˆซ์ž๊ฐ€ 1์„ ๋„˜์–ด๊ฐˆ ๋•Œ ์ž๋ฆฌ ์˜ฌ๋ฆผ

2์˜ ๋ณด์ˆ˜

0,1๋กœ ์Œ์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•

์–ด๋–ค ์ˆ˜๋ฅผ ๊ทธ๋ณด๋‹ค ํฐ 2^n์—์„œ ๋บ€ ๊ฐ’

(=๋ชจ๋“  0,1 ๋’ค์ง‘๊ณ , ๊ฑฐ๊ธฐ์— 1 ๋”ํ•œ๋‹ค.)

 

ํ”Œ๋ž˜๊ทธ

์–‘์ˆ˜, ์Œ์ˆ˜ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ

 

์‹ญ์œก์ง„๋ฒ•

์ด์ง„๋ฒ•์ด 0,1๋กœ ๋ชจ๋“  ์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋‹ค๋ณด๋‹ˆ ๊ธธ์–ด์ ธ์„œ, 15๋ฅผ ๋„˜๋Š” ์‹œ์ ์— ์ž๋ฆฌ ์˜ฌ๋ฆผ์„ ํ•˜๋Š” ์‹ญ์œก์ง„๋ฒ•๋„ ๋งŽ์ด ์‚ฌ์šฉ

10~ 15๊นŒ์ง€ A~F ๋กœ ํ‘œ๊ธฐ

1101์˜ ์Œ์ˆ˜๋ฅผ 2์˜ ๋ณด์ˆ˜ ํ‘œ๊ธฐ๋ฒ•์œผ๋กœ ๊ตฌํ•ด๋ณด์„ธ์š”.

(1) 1,0์„ 0,1๋กœ ๋ณ€ํ™˜
0010
(2) 1 ๋”ํ•˜๊ธฐ
0011

๋‹ต : 0011

 

0,1์„ ๋ฌธ์ž๋กœ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•

(1)๋ฌธ์ž์ง‘ํ•ฉ, (2)์ธ์ฝ”๋”ฉ, (3)๋””์ฝ”๋”ฉ

 

(1)๋ฌธ์ž์ง‘ํ•ฉ

์ปดํ“จํ„ฐ๊ฐ€ ์ธ์‹ํ•˜๊ณ  ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž์˜ ๋ชจ์Œ

์ปดํ“จํ„ฐ๋Š” ๋ฌธ์ž ์ง‘ํ•ฉ์— ์†ํ•ด ์žˆ๋Š” ๋ฌธ์ž๋งŒ์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Œ

 

(2)์ธ์ฝ”๋”ฉ

๋ฌธ์ž ์ง‘ํ•ฉ์— ์†ํ•ด ์žˆ๋Š” ๋ฌธ์ž๋ฅผ 0,1๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •

 

(3)๋””์ฝ”๋”ฉ

์ธ์ฝ”๋”ฉ์˜ ๋ฐ˜๋Œ€ ๊ณผ์ •

0,1 ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž ์ฝ”๋“œ๋ฅผ ์‚ฌ๋žŒ์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •

 

์•„์Šคํ‚ค ์ฝ”๋“œ

์˜์–ด ์•ŒํŒŒ๋ฒณ๊ณผ ์•„๋ผ๋น„์•„ ์ˆซ์ž, ์ผ๋ถ€ ํŠน์ˆ˜ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•œ ๋ฌธ์ž ์ง‘ํ•ฉ

๊ฐ๊ฐ ๋ฌธ์ž๋Š” 7๋น„ํŠธ๋กœ ํ‘œํ˜„๋˜๊ณ , 2^7=128๊ฐœ์˜ ๋ฌธ์ž๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Œ

ํ™•์žฅ ์•„์Šคํ‚ค์ฝ”๋“œ๊ฐ€ ๋‚˜์™”์œผ๋‚˜ ์ด๋„ ํ•œ๊ธ€์„ ํ‘œํ˜„ํ•˜๊ธฐ์—” ํ„ฑ์—†์ด ๋ถ€์กฑ. 

 

์œ ๋‹ˆ์ฝ”๋“œ

EUC-KR๋ณด๋‹ค ํ›จ์”ฌ ๋‹ค์–‘ํ•œ ํ•œ๊ธ€์„ ํฌํ•จํ•˜๋ฉฐ ๋Œ€๋ถ€๋ถ„ ๋‚˜๋ผ์˜ ๋ฌธ์ž, ํŠน์ˆ˜๋ฌธ์ž, ํ™”์‚ดํ‘œ, ์ด๋ชจํ‹ฐ์ฝ˜๊นŒ์ง€ ์ฝ”๋“œ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์ผ๋œ ๋ฌธ์ž ์ง‘ํ•ฉ

 

[ 3์žฅ ]

์ธ๊ฐ„์˜ ์–ธ์–ด์ธ ๊ณ ๊ธ‰ ์–ธ์–ด๋ฅผ ์ปดํ“จํ„ฐ๊ฐ€ ์•Œ์•„๋“ค์„ ์ˆ˜ ์žˆ๋Š” ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ฐ”๊พธ๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค

 

์ €๊ธ‰ ์–ธ์–ด

๊ธฐ๊ณ„์–ด์™€ ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๊ฐ€ ์žˆ๋‹ค

 

๊ธฐ๊ณ„์–ด๋Š” 0,1์˜ ๋ช…๋ น์–ด ๋น„ํŠธ๋กœ ์ด๋ฃจ์–ด์ง„ ์–ธ์–ด

์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋Š” ๊ธฐ๊ณ„์–ด๋ฅผ ์ฝ๊ธฐ ํŽธํ•œ ํ˜•ํƒœ๋กœ ๋ณ€์—ญํ•œ ์–ธ์–ด

 

( ex )

0101 0101(๊ธฐ๊ณ„์–ด) -> push rbp(์–ด์…ˆ๋ธ”๋ฆฌ์–ด)

 

๊ณ ๊ธ‰์–ธ์–ด -> ์ €๊ธ‰์–ธ์–ด ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ์‹์—๋Š”

(1)์ปดํŒŒ์ผ ์–ธ์–ด /  (2)์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด๊ฐ€ ์žˆ์Œ

(1) ์ปดํŒŒ์ผ ์–ธ์–ด

์ปดํŒŒ์ผ๋Ÿฌ์— ์˜ํ•ด ์†Œ์Šค ์ฝ”๋“œ ์ „์ฒด๊ฐ€ ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜๋˜์–ด ์‹คํ–‰๋˜๋Š” ๊ณ ๊ธ‰ ์–ธ์–ด

C์–ธ์–ด๊ฐ€ ๊ทธ ์˜ˆ

์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ํ†ตํ•ด ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜๋œ ์ฝ”๋“œ๋ฅผ ๋ชฉ์  ์ฝ”๋“œ๋ผ ํ•จ

 

(2) ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด

์ธํ„ฐํ”„๋ฆฌํ„ฐ์— ์˜ํ•ด ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ ํ•œ ์ค„์”ฉ ์‹คํ–‰๋˜๋Š” ๊ณ ๊ธ‰ ์–ธ์–ด

PYTHON์ด ๊ทธ ์˜ˆ

์ปดํ“จํ„ฐ์™€ ๋Œ€ํ™”ํ•˜๋“ฏ ์ฝ”๋“œ๋ฅผ ํ•œ ์ค„์”ฉ ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ €๊ธ‰ ์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ธฐ๋‹ค๋ฆด ํ•„์š”๊ฐ€ ์—†๋‹ค.

์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค.

 

๋ช…๋ น์–ด

(1)์—ฐ์‚ฐ ์ฝ”๋“œ์™€ (2)์˜คํผ๋žœ๋“œ๋กœ ๊ตฌ์„ฑ

๋ช…๋ น์–ด๊ฐ€ ์ˆ˜ํ–‰ํ•  ์—ฐ์‚ฐ -> ์—ฐ์‚ฐ์ฝ”๋“œ(์—ฐ์‚ฐ์ž)

์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ, ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜ -> ์˜คํผ๋žœ๋“œ(ํ”ผ์—ฐ์‚ฐ์ž)

 

(1) ์—ฐ์‚ฐ์ฝ”๋“œ

๋ช…๋ น์–ด๊ฐ€ ์ˆ˜ํ–‰ํ•  ์—ฐ์‚ฐ์ด ์œ„์น˜ (ex) ๋”ํ•ด๋ผ~๋นผ๋ผ~์ €์žฅํ•ด๋ผ~)

์—ฐ์‚ฐ ์ฝ”๋“œ ์œ ํ˜•์€ ๋ฐ์ดํ„ฐ ์ „์†ก / ์‚ฐ์ˆ  ๋ฐ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ / ์ œ์–ด ํ๋ฆ„ ๋ณ€๊ฒฝ / ์ž…์ถœ๋ ฅ ์ œ์–ด ๋กœ ๊ตฌ์„ฑ

 

์œ ํšจ ์ฃผ์†Œ

์—ฐ์‚ฐ์˜ ๋Œ€์ƒ์ด ๋˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜

 

(2) ์˜คํผ๋žœ๋“œ ( =์ฃผ์†Œ์ฝ”๋“œ )

์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋‚˜ ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜

ํ•„๋“œ์—๋Š” ์ˆซ์ž์™€ ๋ฌธ์ž ๋“ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐ์ดํ„ฐ ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ๊ฐ€ ์˜ด

์ˆซ์ž๋‚˜ ๋ฌธ์ž์™€ ๊ฐ™์ด ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ง์ ‘ ๋ช…์‹œํ•˜์ง„ ์•Š๊ณ , ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜(์ฆ‰ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋‚˜ ๋ ˆ์ง€์Šคํ„ฐ ์ด๋ฆ„)์ด ๋‹ด๊น€. 

( ex )

์˜คํผ๋žœ๋“œ๊ฐ€ ํ•˜๋‚˜๋„ ์—†์œผ๋ฉด -> 0-์ฃผ์†Œ๋ช…๋ น์–ด

์˜คํผ๋žœ๋“œ๊ฐ€ ํ•˜๋‚˜๋ฉด -> 1-์ฃผ์†Œ๋ช…๋ น์–ด

์˜คํผ๋žœ๋“œ๊ฐ€ ๋‘ ๊ฐœ๋ฉด -> 2-์ฃผ์†Œ๋ช…๋ น์–ด

์˜คํผ๋žœ๋“œ๊ฐ€ ์„ธ ๊ฐœ๋ฉด -> 3-์ฃผ์†Œ๋ช…๋ น์–ด

 

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

์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋œ ์œ„์น˜๋ฅผ ๋ช…์‹œํ•  ๋•Œ ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ ์œ„์น˜๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•

์œ ํšจ ์ฃผ์†Œ๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์„ ๋งํ•จ

(1)์ฆ‰์‹œ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ /  (2)์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ / (3)๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ / (4)๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹ / (5)๋ ˆ์ง€์Šคํ„ฐ ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

 

(1) ์ฆ‰์‹œ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

์ •์˜ : ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ์ง์ ‘ ๋ช…์‹œํ•˜๋Š” ๋ฐฉ์‹

์žฅ์  : ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ์‹. ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ๋ ˆ์ง€์Šคํ„ฐ๋กœ๋ถ€ํ„ฐ ์ฐพ๋Š” ๊ณผ์ •์ด ๋น ์ ธ ๋น ๋ฅด๋‹ค.

๋‹จ์ : ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ํฌ๊ธฐ๊ฐ€ ์ž‘์•„์ง„๋‹ค. 

 

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

์ •์˜ : ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ์œ ํšจ ์ฃผ์†Œ๋ฅผ ์ง์ ‘์ ์œผ๋กœ ๋ช…์‹œํ•˜๋Š” ๋ฐฉ์‹

์žฅ์  : ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๊ฐ€ ์ฆ‰์‹œ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹๋ณด๋‹ค ํฌ๋‹ค.

๋‹จ์  : ์œ ํšจ ์ฃผ์†Œ๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๊ฐ€ ์—ฐ์‚ฐ ์ฝ”๋“œ์˜ ๋น„ํŠธ ์ˆ˜๋งŒํผ ์ค„์–ด๋“ ๋‹ค.

ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์˜คํผ๋žœ๋“œ ํ•„๋“œ์˜ ๊ธธ์ด๊ฐ€ ์—ฐ์‚ฐ ์ฝ”๋“œ์˜ ๊ธธ์ด๋งŒํผ ์งง์•„์ ธ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ํšจ ์ฃผ์†Œ์— ์ œํ•œ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

 

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

์ •์˜ : ์œ ํšจ ์ฃผ์†Œ์˜ ์ฃผ์†Œ๋ฅผ ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ๋ช…์‹œ

์žฅ์  : ์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹๋ณด๋‹ค ํ‘œํ˜„ ๊ฐ€๋Šฅํ•œ ์œ ํšจ ์ฃผ์†Œ์˜ ๋ฒ”์œ„๊ฐ€ ๋” ๋„“์–ด์ง.

๋‹จ์  : ๋‘ ๋ฒˆ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ ‘๊ทผ์ด ํ•„์š”ํ•ด ์†๋„๊ฐ€ ๋Š๋ฆฌ๋‹ค.

 

(4) ๋ ˆ์ง€์Šคํ„ฐ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

์ •์˜ : ์ง์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹๊ณผ ๋น„์Šทํ•˜๊ฒŒ ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•œ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ์ง์ ‘ ๋ช…์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•

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

๋‹จ์  : ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ž˜์ง€์Šคํ„ฐ ํฌ๊ธฐ์— ์ œํ•œ์ด ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค.

 

(5) ๋ ˆ์ง€์Šคํ„ฐ ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹

์ •์˜ : ์—ฐ์‚ฐ์— ์‚ฌ์šฉํ•  ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•˜๊ณ , ๊ทธ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•œ ๋ ˆ์ง€์Šคํ„ฐ๋ฅผ ์˜คํผ๋žœ๋“œ ํ•„๋“œ์— ๋ช…์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•

์žฅ์  : ์œ ํšจ ์ฃผ์†Œ๋ฅผ ์ฐพ๋Š” ๊ณผ์ •์ด ๊ฐ„์ ‘ ์ฃผ์†Œ ์ง€์ • ๋ฐฉ์‹๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ, ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ํšŸ์ˆ˜๊ฐ€ ํ•œ ๋ฒˆ์œผ๋กœ  ์ค„์–ด๋“ ๋‹ค๋Š” ์žฅ์ 

 

(+)

์Šคํƒ(STACK)

ํ•œ์ชฝ ๋์ด ๋ง‰ํ˜€์žˆ๋Š” ํ†ต๊ณผ ๊ฐ™์€ ์ €์žฅ ๊ณต๊ฐ„

์ €์žฅํ•œ ์ž๋ฃŒ๋ฅผ ๋นผ๋‚ผ ๋•Œ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ €์žฅํ•œ ๋ฐ์ดํ„ฐ๋ถ€ํ„ฐ ๋นผ๋ƒ„

LIFO (LAST IN FIRST OUT)

=ํ›„์ž…์„ ์ถœ

๋ฐ์ดํ„ฐ ์ €์žฅํ•˜๋Š” ๊ฒŒ = PUSH / ๋ฐ์ดํ„ฐ ๊บผ๋‚ด๋Š” ๊ฒŒ = POP

์ถœ์ฒ˜ : https://www.programiz.com/dsa/stack
๋น„์Šทํ•œ ์˜ˆ

ํ(QUEUE)

ํ•œ ์ชฝ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ํ•œ ์ชฝ์œผ๋กœ ์ €์žฅํ•œ ์ˆœ์„œ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋นผ๋ƒ„

FIFO(FIRST IN FIRST OUT)

=์„ ์ž…์„ ์ถœ

์ถœ์ฒ˜ : https://www.scaler.com/topics/data-structures/queue-in-data-structure/
๋น„์Šทํ•œ ์˜ˆ

์˜ˆ์ œ๋„ ํ’€์–ด๋ดค๋‹ค

https://ff-tb02.tistory.com/81

 

[์Šคํƒ ์˜ˆ์ œ] ๋ฐฑ์ค€ 10773๋ฒˆ

https://www.acmicpc.net/problem/10773 ๋ฌธ์ œ : ์ฒซ ๋ฒˆ์งธ ์ค„์— ์ •์ˆ˜ K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 ≤ K ≤ 100,000)์ดํ›„ K๊ฐœ์˜ ์ค„์— ์ •์ˆ˜๊ฐ€ 1๊ฐœ์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ •์ˆ˜๋Š” 0์—์„œ 1,000,000 ์‚ฌ์ด์˜ ๊ฐ’์„ ๊ฐ€์ง€๋ฉฐ, ์ •์ˆ˜๊ฐ€ "0" ์ผ ๊ฒฝ์šฐ์—๋Š”

ff-tb02.tistory.com

https://ff-tb02.tistory.com/82

 

[์Šคํƒ ์˜ˆ์ œ] ๋ฐฑ์ค€ 9012๋ฒˆ

https://www.acmicpc.net/problem/9012 ๋ฌธ์ œ : ๊ด„ํ˜ธ ๋ฌธ์ž์—ด(Parenthesis String, PS)์€ ๋‘ ๊ฐœ์˜ ๊ด„ํ˜ธ ๊ธฐํ˜ธ์ธ ‘(’ ์™€ ‘)’ ๋งŒ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š” ๋ฌธ์ž์—ด์ด๋‹ค. ๊ทธ ์ค‘์—์„œ ๊ด„ํ˜ธ์˜ ๋ชจ์–‘์ด ๋ฐ”๋ฅด๊ฒŒ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์„

ff-tb02.tistory.com

https://ff-tb02.tistory.com/84

 

[์Šคํƒ ์˜ˆ์ œ] ๋ฐฑ์ค€ 10828๋ฒˆ

https://www.acmicpc.net/problem/10828 ๋ฌธ์ œ :์ •์ˆ˜๋ฅผ ์ €์žฅํ•˜๋Š” ์Šคํƒ์„ ๊ตฌํ˜„ํ•œ ๋‹ค์Œ, ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ๋ช…๋ น์„ ์ฒ˜๋ฆฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.๋ช…๋ น์€ ์ด ๋‹ค์„ฏ ๊ฐ€์ง€์ด๋‹ค.push X: ์ •์ˆ˜ X๋ฅผ ์Šคํƒ์— ๋„ฃ๋Š” ์—ฐ

ff-tb02.tistory.com