MCP๋กœ ์—ฐ๊ฒฐ โ†’

๊ณ„์‚ฐ ์ž…๋ ฅ

๊ณต์‹

๊ด‘๊ณ 

๊ฒฐ๊ณผ

Two's Complement Binary (8-bit)
11111011
์ €์žฅ๋œ ๋น„ํŠธ ํŒจํ„ด
๋ถ€ํ˜ธ ์—†๋Š” ์ €์žฅ ๊ฐ’ 251
๋ถ€ํ˜ธ ์žˆ๋Š” ํ•ด์„ -5
2์˜ ๋ณด์ˆ˜ (์Œ์ˆ˜ํ™”) 5

2์˜ ๋ณด์ˆ˜ ๊ณ„์‚ฐ๊ธฐ๋ž€?

2์˜ ๋ณด์ˆ˜(two's complement)๋Š” ์ปดํ“จํ„ฐ๊ฐ€ ์ •ํ•ด์ง„ ๋น„ํŠธ ์ˆ˜ ์•ˆ์—์„œ ๋ถ€ํ˜ธ ์žˆ๋Š” ์ •์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ํ‘œ์ค€ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ด ๊ณ„์‚ฐ๊ธฐ๋Š” 10์ง„์ˆ˜์™€ n๋น„ํŠธ ๋ ˆ์ง€์Šคํ„ฐ ํญ์„ ์ž…๋ ฅ๋ฐ›์•„, ํ•ด๋‹น ๊ฐ’์ด 2์˜ ๋ณด์ˆ˜ ๋น„ํŠธ ํŒจํ„ด์œผ๋กœ ์–ด๋–ป๊ฒŒ ์ €์žฅ๋˜๋Š”์ง€, ๊ทธ ๋น„ํŠธ๋“ค์ด ๋ถ€ํ˜ธ ์—†๋Š” ๊ฐ’์œผ๋กœ๋Š” ๋ฌด์—‡์„ ๋‚˜ํƒ€๋‚ด๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ๋ถ€ํ˜ธ ์žˆ๋Š” ์ˆ˜๋กœ๋Š” ์–ด๋–ป๊ฒŒ ํ•ด์„๋˜๋Š”์ง€๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์–‘์ˆ˜์™€ ์Œ์ˆ˜ ์ž…๋ ฅ ๋ชจ๋‘์— ๋Œ€ํ•ด ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

์ธ์ฝ”๋”ฉํ•˜๋ ค๋Š” 10์ง„์ˆ˜ ๊ฐ’๊ณผ ๋น„ํŠธ ์ˆ˜(๋ณดํ†ต 8, 16, 32)๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”. ๊ณ„์‚ฐ๊ธฐ๋Š” ๋ชจ๋“ˆ๋กœ ์—ฐ์‚ฐ์„ ์‚ฌ์šฉํ•ด ๊ฐ’์„ n๋น„ํŠธ ๋ ˆ์ง€์Šคํ„ฐ์— ๋งž์ถฐ ๊ฐ์‹ธ๊ณ , 2์ง„์ˆ˜ ํ‘œํ˜„์„ ๋ณด์—ฌ์ค€ ๋’ค ๋ถ€ํ˜ธ ์žˆ๋Š” ํ•ด์„์œผ๋กœ ๋””์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค. ์Œ์ˆ˜ ์ž…๋ ฅ์€ ์ž๋™์œผ๋กœ 2์˜ ๋ณด์ˆ˜ ํ˜•ํƒœ๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

๊ณต์‹ ์„ค๋ช…

๊ฐ’ \(x\)๋ฅผ \(n\)๋น„ํŠธ์— ์ €์žฅํ•˜๋ ค๋ฉด, ์ €์žฅ๋˜๋Š”(๋ถ€ํ˜ธ ์—†๋Š”) ํŒจํ„ด์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

$$\text{stored} = \left(\left(x \bmod 2^{n}\right) + 2^{n}\right) \bmod 2^{n}$$

์ €์žฅ๋œ ๊ฐ’์˜ 2์˜ ๋ณด์ˆ˜(์Œ์ˆ˜ํ™”)๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

$$\text{twos} = \left(2^{n} - \text{stored}\right) \bmod 2^{n}$$

\(n\)๋น„ํŠธ ํŒจํ„ด์˜ ๋ถ€ํ˜ธ ์žˆ๋Š” ์˜๋ฏธ๋ฅผ ๋””์ฝ”๋”ฉํ•˜๋ ค๋ฉด: ํŒจํ„ด์ด \(2^{n-1}\) ์ด์ƒ์ด๋ฉด ๊ฐ’์€ \(\text{pattern} - 2^{n}\) (์Œ์ˆ˜)์ด๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํŒจํ„ด ์ž์ฒด๊ฐ€ ๊ฐ’์ด ๋ฉ๋‹ˆ๋‹ค.

8๋น„ํŠธ 2์ง„ ์…€, ๋งจ ์™ผ์ชฝ ๋น„ํŠธ๊ฐ€ ์Œ์˜ ๋ถ€ํ˜ธ ๊ฐ€์ค‘์น˜๋กœ ํ‘œ์‹œ๋จ
2์˜ ๋ณด์ˆ˜์—์„œ๋Š” ์ตœ์ƒ์œ„ ๋น„ํŠธ๊ฐ€ ์Œ์˜ ๊ฐ€์ค‘์น˜๋ฅผ ๊ฐ€์ ธ ๋ฒ”์œ„๋ฅผ ์–‘์ˆ˜์™€ ์Œ์ˆ˜๋กœ ๋‚˜๋ˆ•๋‹ˆ๋‹ค.

์˜ˆ์ œ๋กœ ์‚ดํŽด๋ณด๊ธฐ

-5๋ฅผ 8๋น„ํŠธ๋กœ ์ธ์ฝ”๋”ฉํ•ด ๋ด…์‹œ๋‹ค. ์—ฌ๊ธฐ์„œ \(2^{8} = 256\) ์ด๋ฏ€๋กœ \(\text{stored} = \left(\left(-5 \bmod 256\right) + 256\right) \bmod 256 = 251\) ์ž…๋‹ˆ๋‹ค. 2์ง„์ˆ˜๋กœ \(251 = 11111011\) ์ž…๋‹ˆ๋‹ค. 251์„ ๋””์ฝ”๋”ฉํ•˜๋ฉด: \(251 \ge 2^{7}\ (128)\) ์ด๋ฏ€๋กœ ๋ถ€ํ˜ธ ์žˆ๋Š” ๊ฐ’์€ \(251 - 256 = -5\) ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. 251์˜ 2์˜ ๋ณด์ˆ˜๋Š” \(\left(256 - 251\right) \bmod 256 = 5\) ๋กœ, ํฌ๊ธฐ(์ ˆ๋Œ“๊ฐ’)์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.

3๋‹จ๊ณ„ ๋‹ค์ด์–ด๊ทธ๋žจ: ์›๋ž˜ ๋น„ํŠธ, ๋ฐ˜์ „๋œ ๋น„ํŠธ, ๊ทธ๋ฆฌ๊ณ  1์„ ๋”ํ•ด ๋ถ€ํ˜ธ ๋ฐ˜์ „
๊ฐ’์„ ์Œ์ˆ˜๋กœ ๋ฐ”๊พธ๋ ค๋ฉด ๋ชจ๋“  ๋น„ํŠธ๋ฅผ ๋ฐ˜์ „ํ•˜๊ณ  1์„ ๋”ํ•ฉ๋‹ˆ๋‹ค.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

์Œ์ˆ˜๋Š” ์™œ ํฐ 2์ง„์ˆ˜ ํŒจํ„ด์ฒ˜๋Ÿผ ๋ณด์ด๋‚˜์š”? ์•ž์ชฝ ๋น„ํŠธ๊ฐ€ ๋ชจ๋‘ 1์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. \(n\)๋น„ํŠธ ๋ถ€ํ˜ธ ์žˆ๋Š” ์—ฐ์‚ฐ์—์„œ ๋งจ ์•ž ๋น„ํŠธ๊ฐ€ 1์ด๋ฉด ์Œ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๋ฏ€๋กœ, 11111011์€ 251์ด ์•„๋‹ˆ๋ผ -5์ž…๋‹ˆ๋‹ค.

n๋น„ํŠธ์—๋Š” ์–ด๋–ค ๋ฒ”์œ„๊ฐ€ ๋“ค์–ด๊ฐ€๋‚˜์š”? ๋ถ€ํ˜ธ ์žˆ๋Š” ๊ฐ’์€ \(-2^{n-1}\)๋ถ€ํ„ฐ \(2^{n-1} - 1\)๊นŒ์ง€์ž…๋‹ˆ๋‹ค. 8๋น„ํŠธ๋ผ๋ฉด -128๋ถ€ํ„ฐ 127๊นŒ์ง€์ฃ .

์ˆซ์ž๊ฐ€ ๋„ˆ๋ฌด ํฌ๋ฉด ์–ด๋–ป๊ฒŒ ๋˜๋‚˜์š”? ๋ ˆ์ง€์Šคํ„ฐ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚œ ๊ฐ’์€ ๋ชจ๋“ˆ๋กœ ์—ฐ์‚ฐ์— ์˜ํ•ด ์ˆœํ™˜(์˜ค๋ฒ„ํ”Œ๋กœ)๋ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ํ•˜๋“œ์›จ์–ด์™€ ๋˜‘๊ฐ™์€ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

์ตœ์ข… ์—…๋ฐ์ดํŠธ: