M: 제 키보드에는 홑화살괄호가 없어서 인터넷에 검색을하고 복사 붙여넣기를 해서 갖고오는데 2가지 형태의 조금 다른 홑화살괄호가 존재하더라구요. 이게 무얼까요? 유니코드와 함께 같이 보면 좋을 것 같습니다. 큰 이유는 없지만 구분하기에 좋을 것 같아요. 유니코드(The Unicode Standard)의 다른 이름은 국제 문자 세트(UCS)입니다. 훨씬 의미의 상상이 쉬워지는 느낌이 있습니다. 이는 전 세계의 모든 문자를 컴퓨터에서 일관되게 표현하고 다룰 수 있도록 설계된 산업 표준입니다. 인코딩은 문자를 숫자로 바꾸고 그 숫자를 0,1로 표현하는 규칙이예요. 문자를 모르는 컴퓨터가 이해할 수 있는 숫자로 바꾸는 방식이죠. 초기에는 아스키코드와 같이 모든 나라가 각 자신의 나라의 문자표를 만들었어요. 그러다보니 숫자의 의미가 섞여버리는 경우가 생겨요 예를들어 0xA4(16진수)의 의미가 한국어와 일본어가 달라지는 경우처럼요. 의문이 하나 있습니다 왜 16진수가 갑자기 등장한걸까요? 2진법을 사용하는 이유는 알겠는데 16진법이 등장한 이유는 이해가 안됩니다. 우리는 10진법이 더 익숙한데 말이죠. 이유는 구조를 표현하기에 적합함입니다. 이진법으로 표기된 8자리의 1바이트 값을 16진법 단 2자리 문자 만으로 표현할 수 있습니다. 10진수는 2진수 구조와 맞아떨어지지 않아요. 그래서 실제 저장된 비트가 1010 0100일 때 이걸 10진수로 바꾸면 164가 됩니다. 이 전의 비트를 추론하기가 어렵죠. 16진수의 경우 4비트 1바이트가 8비트니까 1바이트의 1/2이 되는거죠. 그래서 0xA4는 A = 1010 , 4 = 0100으로 1010 0100을 알 수 있습니다.

이진법(binary)는 두 개의 숫자(1과 0)만을 이용하는 수 체계이다. 관습적으로 0과 1의 기호를 쓰며 이들로 이루어진 수를 이진수라고 한다. 이진법은 라이프니츠(Gottfried Wilhelm Leibniz)가 음양사상의 영향을 받아 발명했다.
2진법으로 표현된 1101을 10진법으로 변환시키면 13이 된다. 위치 순서를 거듭제곱으로 따지면 된다.

거듭제곱이란 같은 수나 문자를 여러 번 곱하는 것을 간단히 나타내는 방법이다. 곱하는 수를 '밑', 곱하는 횟수를 '지수'라고 하며, 'a n'과 같이 밑을 오른쪽 위에 작은 숫자로 씁니다. 예를 들어, 3×3×3×3은 3 4으로 표기하며 '3의 네제곱'이라고 읽습니다.

각 자릿값은 왼쪽으로 갈수록 20, 21, 22와 같이 거듭제곱으로 커지며 십진법의 9처럼 특정 숫자를 넘으면 자리올림이 일어나는 규칙을 따릅니다. 십진법의 10은 이진법에서는 10102으로 표현됩니다.

이러한 '진법'은 위치값 기수법입니다. 기수법의 하나인데, 자릿수와 관계없이 같은 기호를 쓰는 것이 특징입니다. 기수법은 수를 시각적으로 나타내는 방법으로, 기수법을 통해서 나타나는 각각의 숫자는 다른 수들과 구별되는 표기 방식을 가집니다. 가장 단순하고 원시적인 기수법은 1에 대한 표기만 가지고 모든 수를 표현하는 단항 기수법(unary numeral system) 이며 명수법(특정 수들에 대한 표기를 가지는) 숫자의 위치와 계수를 이용하여 수를 나타내는 위치값 기수법 등의 기수법 형태로 발전하였다. 계수(coefficient)란 수학에서 변수에 곱해진 수 또는 문자에 묶여있는 수를 의미한다.

10진법에서는 0~9까지가 한 자리수에 표현되며 9를 초과하여 10이 되면 자리 올림이 발생합니다. 커퓨터가 대표적으로 사용하는 2진법은 한 자릿수에 0,1만 표현되며 1을 초과하여 2가 되면 자리올림이 발생합니다. a진법은 a를 기준으로 자리올림을 한다고 볼 수 있습니다. 예시를 같이 보고싶습니다. 자리올림을 한다는 것을 생각하면 1은 1이고 2는 10입니다. 그리고 3은 11이 될 것이고 4는 100이 되겠죠! 2가 되면 자리올림이 발생하는 예시라고 볼 수 있을 것 같아요. 그런데 실제 표기되는걸 보면 0001, 0010 이렇게 앞에 0이 있습니다. 앞 0의 의미는 없지만 컴퓨터에서 비트수를 맞춰야할 때 8비트, 16비트, 32비트처럼 앞에 0을 채우는 경향이 있습니다. 8비트는 00000001, 16비트는 0000000000000001, 32비트는 00000000000000000000000000000001 이렇게 표현되는것 같아요. 8자리 비트는 8개의 0또는 1을 나열할 수 있는 자리라고 생각하면 쉽습니다. 각 자리마다 2가지 선택(0또는 1)이 있으므로 8비트 안에서 나올 수 있는 경우의 수는 28 = 256가지입니다. rgb 표기에서도 8비트로 표현되기 때문에 각 성분이 0~255 총 256가지 경우가 생깁니다.
이제 홑화살 괄호에 조금 더 가까워진 것 같아요. 홑 화살괄호를 보았을 때 유니코드 U+3008와 U+3009의 〈 〉가 존재하고 U+27E8와 U+27E9인 ⟨ ⟩ 가 존재합니다. 유니코드는 U+ 뒤에 오는 16진수 숫자가 특정 유니코드 문자를 나타내는 표기 방식입니다. U+3008와 U+3009의 이름은 Left Angle Bracket과 Right Angle Bracket입니다. U+27E8와 U+27E9의 이름은 Mathematical Left angle bracket과 Mathematical right angle bracket입니다.
... 이어서 계속..
뒤로가기(back)