๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
C ๊ณ„์—ด/C

๐Ÿ’ป MUD๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉฐ ๋ฐฐ์šฐ๋Š” C์–ธ์–ด (#1) ์ด๋ก 

by Yubin Heo 2020. 4. 1.

๐ŸŽฒ C์–ธ์–ด์˜ ์œ ๋ž˜


C๋Š” 1972๋…„ ์ผ„ ํ†ฐ์Šจ๊ณผ ๋ฐ๋‹ˆ์Šค ๋ฆฌ์น˜๊ฐ€ ๋ฒจ ์—ฐ๊ตฌ์†Œ์—์„œ ์ผํ•  ๋‹น์‹œ,

์ƒˆ๋กœ ๊ฐœ๋ฐœ๋œ ์œ ๋‹‰์Šค ์šด์˜ ์ฒด์ œ์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ฐœ๋ฐœํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

 

์—„์ฒญ ์˜ค๋ž˜๋œ ์–ธ์–ด์ธ๋ฐ, ์™œ ์•„์ง๋„ ๋งŽ์€ ์ž…๋ฌธ์ž๋“ค์ด ๋ฐฐ์šฐ๋ ค๊ณ  ํ• ๊นŒ์š”?

์ผ๋‹จ C์–ธ์–ด๋Š” "๋ชจ๋“  ์–ธ์–ด์˜ ์–ด๋จธ๋‹ˆ" ๋ผ๊ณ  ๋ถˆ๋ฆด ์ •๋„๋กœ ๋งŽ์€ ์–ธ์–ด๊ฐ€

C์–ธ์–ด๋ฅผ ๊ธฐ๋ฐ˜์— ๋‘๊ณ  ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

 

๋˜ํ•œ ๋ชจ๋“  OS์˜ ์–ด๋จธ๋‹ˆ๋ผ ๋ถˆ๋ฆฌ๋Š” UNIX๋ฅผ ๋ณด๋‹ค ํŽธ๋ฆฌํ•˜๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด

C์–ธ์–ด๋ฅผ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณผ๊ฑฐ์— UNIX๋Š” ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ์™€ ๋น„๊ตํ•  ์ˆ˜ ์—†์„ ๋งŒํผ

ํŽธ๋ฆฌํ•˜๊ณ , ํšจ์œจ์ ์ธ ์šด์˜์ฒด์ œ ์˜€์Šต๋‹ˆ๋‹ค.

 

๊ธฐ์กด UNIX๋Š” low-level ์–ธ์–ด์ธ '์–ด์…ˆ๋ธ”๋ฆฌ' ๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด๋Š” ๊ธฐ์กด ์ปดํ“จํ„ฐ์˜ CPU ๊ตฌ์กฐ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ ๋งˆ๋‹ค

๋‹ค์‹œ ์ž‘์„ฑํ•ด์•ผ ํ•˜๋Š” ๋งค์šฐ ์น˜๋ช…์ ์ธ ๋‹จ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ๋ž˜์„œ ๋ณด๋‹ค ํŽธ๋ฆฌํ•œ ์–ธ์–ด๋ฅผ ๋งŒ๋“ค ํ•„์š”์„ฑ์ด ์ƒ๊ธฐ๊ฒŒ ๋˜์—ˆ๊ณ ,

๊ทธ ๊ฒฐ๊ณผ C์–ธ์–ด๊ฐ€ ๋งŒ๋“ค์–ด ์กŒ์Šต๋‹ˆ๋‹ค.

 

Low-Level : ์‚ฌ๋žŒ์˜ ์–ธ์–ด๋ณด๋‹ค ์ปดํ“จํ„ฐ์˜ ์–ธ์–ด์— ๊ฐ€๊นŒ์šด ์–ธ์–ด๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค.

High-Level : ์ปดํ“จํ„ฐ์˜ ์–ธ์–ด๋ณด๋‹ค ์‚ฌ๋žŒ์˜ ์–ธ์–ด์— ๊ฐ€๊นŒ์šด ์–ธ์–ด๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค.

C์–ธ์–ด๊ฐ€ High-Level ์–ธ์–ด์— ์†ํ•ฉ๋‹ˆ๋‹ค.

 

 

๐ŸŽฒ C์–ธ์–ด์˜ ์žฅ์  (https://jungpaeng.tistory.com/4?category=929117)


์„ค๊ณ„์ƒ์˜ ํŠน์ง•

C ์–ธ์–ด๋Š” ํ•˜ํ–ฅ์‹ ์„ค๊ณ„์™€ ๊ตฌ์กฐํ™” ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ๋ชจ๋“ˆํ™” ์„ค๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š”

ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•จ์œผ๋กœ์จ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํšจ์œจ์„ฑ

C ์–ธ์–ด๋Š” ์ปดํ“จํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ C๋กœ ๋งŒ๋“  ํ”„๋กœ๊ทธ๋žจ ์—ญ์‹œ ์ž‘๊ณ  ์‹คํ–‰ ์†๋„ ๋˜ํ•œ ๋น ๋ฆ…๋‹ˆ๋‹ค.

C๋ฅผ ์–ด์…ˆ๋ธ”๋ฆฌ์–ธ์–ด์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•ด์„œ ๋ฏธ์„ธํ•œ ์ž‘์—…์„ ์ง„ํ–‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ด์‹์„ฑ

C ์–ธ์–ด๋Š” ์ด์‹์„ฑ์ด ์ข‹์€ ์–ธ์–ด์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ํ•œ ์‹œ์Šคํ…œ์—์„œ ์ž‘์„ฑํ•œ C ํ”„๋กœ๊ทธ๋žจ์„ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์œผ๋กœ ๊ฐ€์ ธ๊ฐ”์„ ๋•Œ

์ฝ”๋“œ์˜ ์ผ๋ถ€๋ถ„๋งŒ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜, ์ˆ˜์ • ์—†์ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ์„ ๋œปํ•˜๋ฉฐ,

์ˆ˜์ •์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋„ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ช‡ ๊ฐ€์ง€ ์š”์†Œ๋“ค๋งŒ ๊ฐ„๋‹จํžˆ ์ˆ˜์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

 

๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ์ด์‹์„ฑ์„ ๊ณ ๋ คํ•˜๊ณ  ์žˆ์ง€๋งŒ,

C ์–ธ์–ด๋Š” 8bit ๋งˆ์ดํฌ๋กœํ”„๋กœ์„ธ์„œ์—์„œ ์Šˆํผ์ปดํ“จํ„ฐ๊นŒ์ง€ ๋งŽ์€ ์ปดํ“จํ„ฐ์—์„œ ๊ตฌ๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ, ๋ชจ๋‹ˆํ„ฐ์™€ ๊ฐ™์€ ํŠน์ • ํ•˜๋“œ์›จ์–ด์— ์ ‘๊ทผํ•˜๊ฑฐ๋‚˜,

์šด์˜์ฒด์ œ์˜ ํŠน์ • ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋„๋ก ์ž‘์„ฑ๋œ ํ”„๋กœ๊ทธ๋žจ์€ ์ด์‹์„ฑ์ด ์—†์Šต๋‹ˆ๋‹ค.

 

๊ฐ•๋ ฅํ•˜๊ณ  ์œ ์—ฐํ•จ

C ์–ธ์–ด๋Š” ๊ฐ•๋ ฅํ•˜๊ณ  ์œ ์—ฐํ•ฉ๋‹ˆ๋‹ค.

Unix ์šด์˜์ฒด์ œ๊ฐ€ C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ,

FORTRAN, Perl, Python, Pascal, LISP, Logo, BASIC์™€ ๊ฐ™์€

์–ธ์–ด๋“ค์˜ ์ปดํŒŒ์ผ๋Ÿฌ์™€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋„ C๋กœ ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

C ํ”„๋กœ๊ทธ๋žจ์„ ๋ฌผ๋ฆฌํ•™์ด๋‚˜ ๊ณตํ•™ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๊ณ ,

์˜ํ™”์˜ ํŠน์ˆ˜ ํšจ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ ์ง€ํ–ฅ์„ฑ

C ์–ธ์–ด๋Š” ํ•˜๋“œ์›จ์–ด๋ฅผ ์ œ์–ดํ•˜๊ณ  ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋“ฑ ์ œํ•œ์„ ๋‘์ง€ ์•Š์•„์„œ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์š”๊ตฌ์— ์ ์ ˆํžˆ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

C ์–ธ์–ด๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ์—๊ฒŒ ์ž์œ ๋ฅผ ์ฃผ๋Š” ๋งŒํผ

๊ทธ ์ž์œ ์— ๋Œ€ํ•œ ์ฑ…์ž„๋„ ํ•จ๊ป˜ ๋ถ€์—ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

๐ŸŽฒ C์–ธ์–ด์˜ ์žฅ์  (https://jungpaeng.tistory.com/4?category=929117)


์–ด๋–ค ํ•œ ๊ฐ€์ง€ ์„ฑ๊ฒฉ์ด ์žฅ์ ์ด ๋˜๋ฉด์„œ ๋‹จ์ ์ด ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด, C ์–ธ์–ด๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํ‘œํ˜„์˜ ์ž์œ ์—๋Š” ํ•ญ์ƒ ์ฑ…์ž„์ด ๋”ฐ๋ฅธ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.

ํŠนํžˆ, C์—์„œ ํฌ์ธํ„ฐ์˜ ์‚ฌ์šฉ์€ ์ฐพ์•„๋‚ด๊ธฐ ์–ด๋ ค์šด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์˜ค๋ฅ˜๋ฅผ ๋งŒ๋“ค์–ด ๋‚ด๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

 

 

 

๐ŸŽฒ C์–ธ์–ด ์ปดํŒŒ์ผ๋Ÿฌ ์„ค์น˜


https://blog.hyb.kr/24

 

๐Ÿฆด C#.NET C#ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค์–ด๋ณด์ž! (#1)

์•ˆ๋…•ํ•˜์„ธ์š”, C#.NET ๊ฐ•์ขŒ๋ฅผ ํ•˜๊ฒŒ ๋œ dia7691 ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ผ๋‹จ ์ด๋Ÿฐ ์ž๋ฆฌ๋ฅผ ๋‚ด์ฃผ์‹  HeoYuBin๋‹˜, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ด์ œ๋ถ€ํ„ฐ ํ•œ ๋ฒˆ C#.NET ์„ ๋ฐฐ์›Œ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. C#๋Š” ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์—์„œ ๊ฐœ๋ฐœํ•œ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„..

blog.hyb.kr

์œ„ ๊ฒŒ์‹œ๋ฌผ์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

๋Œ“๊ธ€