
namespace CSharpGrammar
{
class Program
{
static void Main(string[] args)
{
// 실질적으로 내부적으로 데이터는 이진법으로 저장
// 이진법은 2배씩 늘어남
// ex3
// 맨 앞의 전원을 누르면 음수로 표현됨
// 2의 보수법
// 최상위 비트만 1인 경우 가장 작은 숫자
// 모든 비트가 1인 경우 가장 큰 숫자
}
}
}
/// 실제로 어떤 숫자를 컴퓨터에 저장한다고 하면 컴퓨터는 2진법으로 저장을 하고있다.
20은 2진수로 00010100입니다./// 윈도우 계산기 - 프로그래머로 가면 이렇게 비트 계산기를 쓸 수 있음
20 → 2진수 00010100 → 16진수 0x14./// 데이터가 저장되는 방식은 2의 보수법을 사용하여 저장되고 있다.
+0과 -0이 별도로 존재하지만, 2의 보수법에서는 단 하나의 0만 존재합니다./// 음수 표현시 2의 보수 사용하는 이유
/// 👉 0을 +0 -0 두가지로 표현하지 않기 위해 사용.
/// -0을 없애기 위해 전체 비트에 1을 더해 -0을 하나 밖에 없는 진짜 0으로 만들어준다.
양수 → 음수 변환 방법:
0 → 1, 1 → 0).5(10진수) → 00000101(2진수)1111101011111011 (10진수 -5).-0 제거:
-0이 제거됩니다. 00000000(+0)과 11111111(-0)이 존재.11111111이 -1로 변환되므로 0은 단 하나만 존재./// 최상위 비트만 1인 숫자가 가장 작음
/// 각 지리수마다 2배씩 늘어남
최상위 비트(MSB):
0: 양수1: 음수10000000은 -128(가장 작은 값)을 나타냅니다.범위 증가:
-128 ~ 127-32,768 ~ 32,767-2,147,483,648 ~ 2,147,483,6470x1420을 간결하게 표현합니다.202400010100