λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
μ‹œλ„/ꡭ비지원

[D+02] μ΄μ§„μ‹œμŠ€ν…œ(Binary System) & Flow Chart

by πŸ‡λ°•λ΄‰λ΄‰πŸ‡ 2022. 9. 20.

 

 

ꡭ비지원 D+02

-  μ΄μ§„μ‹œμŠ€ν…œ(Binary System) & Flow Chart -

 


 

μ΄μ§„μ‹œμŠ€ν…œ(Binary System)

μ΄μ§„μˆ˜μ— λŒ€ν•œ(Binary) κ·œμΉ™μ˜ 집합(System)

 

 μ§„법

진법 : 수λ₯Ό μ…ˆν•  λ•Œ μžλ¦Ώμˆ˜κ°€ μ˜¬λΌκ°€λŠ” κΈ°μ€€μœΌλ‘œ 일반적으둜 κΈ°μˆ˜λ²•μ΄λΌλŠ” ν‘œν˜„μœΌλ‘œλ„ 쓰인닀.

μ»΄ν“¨ν„°μ—μ„œ μ‚¬μš©ν•˜λŠ” 진법 : 2진법, 10진법, 16진법

 

→ μ»΄ν“¨ν„°μ—μ„œ 3μ§„λ²•μ΄λ‚˜ 5진법과 같은 λ‹€λ₯Έ 진법이 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” μ΄μœ λŠ” λ‹¨μˆœν•˜κ²Œ 쓸일이 μ—†κΈ° λ•Œλ¬Έμ΄λ‹€.

 

2진법 : 수λ₯Ό ν‘œν˜„ν•˜λŠ”λ° ν•„μš”ν•œ 수의 κ°œμˆ˜κ°€ 2개 이닀. (0, 1)

8진법 : 수λ₯Ό ν‘œν˜„ν•˜λŠ”λ° ν•„μš”ν•œ 수의 κ°œμˆ˜κ°€ 8개 이닀. (0 ~ 7)

10진법 : 수λ₯Ό ν‘œν˜„ν•˜λŠ”λ° ν•„μš”ν•œ 수의 κ°œμˆ˜κ°€ 10개 이닀. (0 ~ 9)

16진법 : 수λ₯Ό ν‘œν˜„ν•˜λŠ”λ° ν•„μš”ν•œ κ°œμˆ˜κ°€ 16개 이닀. (0 ~9, A~F)

 

2μ§„μˆ˜

μ»΄ν“¨ν„°μ—μ„œλŠ” 0κ³Ό 1인 2μ§„μˆ˜λ‘œλ§Œ ν‘œν˜„μ΄ λ˜λŠ”λ° μ»΄ν“¨ν„°λŠ” μ „κΈ°μ‹œμŠ€ν…œμœΌλ‘œ 이루어져 μžˆμ–΄ μ „κΈ°κ°€ 흐λ₯΄κ±°λ‚˜ κΊΌμ‘Œμ„λ•Œ ν‘œν˜„ν•˜λŠ” 방법이 1(ON)κ³Ό 0(OFF)으둜 ν‘œν˜„λ˜κΈ° λ•Œλ¬Έμ— μ»΄ν“¨ν„°λŠ” 2μ§„μˆ˜λ‘œ ν‘œν˜„λ˜λŠ” 것이닀.

 

μ§„λ²•λ³€ν™˜

μ‚¬λžŒμ΄ μ»΄ν“¨ν„°μ—κ²Œ 27μ΄λΌλŠ” 숫자λ₯Ό μ „λ‹¬ν•˜κΈ° μœ„ν•΄μ„  2μ§„λ²•μœΌλ‘œ λ³€ν™˜ν•œ ν›„ μ»΄ν“¨ν„°μ—κ²Œ 전달해주어야 ν•˜λ©°, λ°˜λŒ€λ‘œ μ»΄ν“¨ν„°λŠ” μΈκ°„μ—κ²Œ 11011μ΄λΌλŠ” 수λ₯Ό μ „λ‹¬ν•˜κΈ° μœ„ν•΄μ„œλŠ” 2진법을 10μ§„λ²•μœΌλ‘œ ν‘œν˜„ν•΄ 전달해주어야 ν•œλ‹€.

 

κ·Έλ ‡κΈ° λ•Œλ¬Έμ— μš°λ¦¬λŠ” 진법을 λ³€ν™˜ν•˜λŠ” 방법에 λŒ€ν•΄ 이해할 ν•„μš”κ°€ μžˆλ‹€.

 

 

μ»΄ν“¨ν„°μ—μ„œμ˜ 숫자의 ν‘œν˜„ - 2μ§„μˆ˜μ˜ 단점

• 2μ§„μˆ˜λŠ” 컴퓨터가 μ΄ν•΄ν•˜κΈ° νŽΈν•  수 μžˆμ„μ§€ λͺ¨λ₯΄λ‚˜ 인간 μž…μž₯μ—μ„œλŠ” λ„ˆλ¬΄ κΈΈλ‹€.

μΈκ°„μ˜ νŽΈλ¦¬ν•¨μ„ μœ„ν•΄ 10μ§„μˆ˜λ₯Ό μ‚¬μš©ν•˜κΈ°μ—” 컴퓨터가 일일이 λ³€ν™˜ν•΄μ•Όν•˜λ©° μ˜€λ²„ν—€λ“œκ°€ λ°œμƒλ  수 μžˆλ‹€.

μœ„μ˜ 2가지 λ¬Έμ œμ μ„ ν•΄κ²°ν•˜κΈ° μœ„ν•΄ 컴퓨터와 인간사이에 16μ§„μˆ˜λ₯Ό μ‚¬μš©ν•œλ‹€.

16μ§„μˆ˜λŠ” ν”„λ‘œκ·Έλž˜λ°μ‹œμ— 일반적으둜 0x λΌλŠ” prefixλ₯Ό λΆ™μ—¬μ€€λ‹€.

 

μ»΄ν“¨ν„°μ—μ„œμ˜ 숫자의 ν‘œν˜„ - λ‹¨μœ„

bit : ν•˜λ‚˜μ˜ λΉ„νŠΈλŠ” 0κ³Ό 1의 값을 κ°€μ§ˆ 수 있으며, 2개의 μƒνƒœλ‘œ ν‘œν˜„μ΄ κ°€λŠ₯ν•˜λ‹€. ( 0 or 1 )

byte : 8bit = 1byte

Kilobyte : 1024byte = 1Kbyte

Megabyte : 1024kbyte = 1Mbyte

Gigabyte : 1024Mbyte = 1Gbyte

Terabyte : 1024Gbyte = 1Tbyte

 

→ KiloλŠ” μ›λž˜ 10진 μ‹œμŠ€ν…œμ—μ„œ 1000을 μ˜λ―Έν•˜μ§€λ§Œ 2μ§„μ‹œμŠ€ν…œμ—μ„œλŠ” 1000κ³Ό κ°€μž₯ κ°€κΉŒμš΄ 수 2¹β°(1024)μ΄λ―€λ‘œ Kiloλ₯Ό 1024둜 계산해야 ν•œλ‹€.

 

λΉ„νŠΈλ₯Ό 톡해 μ•Œμ•„λ³΄λŠ” Bus

λ©”λͺ¨λ¦¬μ— μžˆλŠ” 데이터λ₯Ό Busλ₯Ό ν†΅ν•΄μ„œ CPU에 정보λ₯Ό 보내렀고 ν•œλ‹€.

μ΄λ•Œ μš°λ¦¬λŠ” Busμ—μ„œ 데이터λ₯Ό 보낼 λ•Œ μ‘°κΈˆμ”© λ³΄λ‚΄κ²Œ λœλ‹€λ©΄ 였랜 μ‹œκ°„μ΄ 걸리게 λ˜μ–΄ Bus의 κ°€μΉ˜κ°€ λ–¨μ–΄μ§€κ²Œ 될 것이닀.

κ·Έλ ‡κΈ° λ•Œλ¬Έμ— 빨리빨리 λ§Žμ€ μ–‘μ˜ 데이터λ₯Ό ν•œκΊΌλ²ˆμ— 보낼 ν•„μš”κ°€ μžˆλŠ”λ° μ΄λ•Œ μ€‘μš”ν•œ 것이 λ°”λ‘œ Bus이닀.

 

BusλŠ” μ„€κ³„μ‹œμ— ν•œλ°©μ— λͺ‡ λΉ„νŠΈμ”© λ³΄λ‚Όμˆ˜ μžˆλŠ”κ°€λ₯Ό μ„€κ³„ν•΄λ‘μ—ˆμœΌλ©°, 16bitλΆ€ν„° 32bit, 64bit의 데이터λ₯Ό ν•œκΊΌλ²ˆμ— 보낼 수 있게 μ„€κ³„λ˜μ–΄ μžˆλ‹€.

ν•˜λ‚˜μ˜ Busλ₯Ό ν™•λŒ€ν•΄μ„œ λ³Έλ‹€λ©΄ 64λΉ„νŠΈμ˜ Bus의 경우 64개의 μž‘μ€ μ„ μœΌλ‘œ 이루어져 μžˆλ‹€.

(더 λ‚˜μ•„κ°€ 128bit의 Bus도 μ‘΄μž¬ν•œλ‹€κ³  ν•œλ‹€)

 

μ΄λ•Œ, λ²„μŠ€μ˜ λΉ„νŠΈκ°€ 64λΉ„νŠΈλΌλ©΄ μš΄μ˜μ²΄μ œλ„ 이λ₯Ό λ”°λΌμ„œ 64λΉ„νŠΈλ‘œ λ§žμΆ°μ£ΌλŠ” 것이 μ’‹λ‹€.

 

λ˜ν•œ μ—¬κΈ°μ„œ ꢁ금증이 μžˆλŠ”λ° μ΄λ―Έμ§€μ—λŠ” λ©”λͺ¨λ¦¬μ— μžˆλŠ” 4λ°”μ΄νŠΈμ˜ 데이터λ₯Ό 64λΉ„νŠΈμ§œλ¦¬μ˜ λ²„μŠ€λ₯Όνƒ€λŠ”데 쒀더 큰 데이터 νƒ€μž…μ€ μ—†μ„κΉŒ?

정닡은 μžˆλ‹€.

λ²„μŠ€μ— ν•œλ°©μ— 싀을 수 μžˆλŠ” 데이터 블둝을 ν•˜λ“œμ›¨μ–΄μ—μ„œλŠ” wordλΌκ³ ν•˜λ©°, μ†Œν”„νŠΈμ›¨μ–΄μ—μ„œλŠ” Base DataType λ˜λŠ” Primitive DataType이라고 ν•œλ‹€.


Flow Chart

• ν”„λ‘œκ·Έλž¨μ„ λ§Œλ“€κΈ° 전에 λ…Όλ¦¬μ μœΌλ‘œ λͺ…령과정을 ν‘œν˜„ν•˜λŠ” 도ꡬ 및 κ³Όμ •

 λ¬Έμ œλ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ 과정및 흐름을 그림으둜 ν‘œν˜„

μ΄λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ 흐름을 둜직이라고 함 ( Algorithm = Logic + Data)

 

 

예제 )

 Q1. ꡬꡬ단 6단을 λ§Œλ“œλŠ” ν”Œλ‘œμš° 차트λ₯Ό λ§Œλ“€μ–΄ λ³΄μ‹œμ˜€.

 

 

λ°˜μ‘ν˜•

λŒ“κΈ€