CS 54

[컴퓨터 구조](4)[정수의 연산]

컴퓨터에선 필요에 따라 자료형을 바꾼다 정수의 확장(작은 자료형 -> 큰 자료형)비부호형: 앞에 추가된 공간만큼 0을 추가부호형: 맨 앞 부호 비트를 추가된 공간만큼 추가정수의 절삭(큰 자료형 -> 작은 자료형)비부호형, 부호형: 맨 앞을 자르고 (비부호형)재번역특히 부호형은 절삭 시 값이 바뀌는 것에 주의 (물론 비부호형도 바뀌긴 함)예시) 비부호형 1010(10)을 3자리로 절삭: 010(2) (값 바뀜)예시) 부호형 1010(-6)을 3자리로 절삭: 010(2) (값 바뀜)정수의 덧셈일반적으로 덧셈하듯이 자리수가 넘어가면 올림을 한다. (w자리 비트 + w자리 비트 = w+1자리 비트 필요) 이때, 비트 개수가 정해져있으므로 맨 앞에 올림 된 비트는 잘린다.비부호형: 자동 행갈이(오버플로우로 버림)..

CS/컴퓨터 구조 2025.01.10

[컴퓨터 구조](3)[정수의 표시]

정수(int)의 표시컴퓨터에서의 정수는 이진수로 표현된다. 이때, 여러 규칙이 있다.비부호형(unsigned) 정수모든 비트를 정수를 이진수로 나타내는데 사용한다. 따라서 나타낼 수 있는 수는 (0~2^(비트 수)-1)이다.예시) 8개의 비트로 비부호형 정수를 나타낸다면, 0~255까지의 수를 나타낼 수 있다.2의 보수(Two's complement)x에 대한 y의 보수: x와 더했을 때 y가 되는 수2진수에서 1의보수: 0의 1의보수 = 1, 1의 0의 보수 = 02진수에서 2의 보수 = 1의 보수 + 1맨 앞자리는 부호를 표현한다. 0이면 +, 1이면 -이다. 따라서 나타낼 수 있는 수는 (-2^(비트수 -1) ~ 2^(비트수-1)-1)예시) 8개의 비트로 2의보수를 나타낸다면, -128~127을 나..

CS/컴퓨터 구조 2025.01.09

[컴퓨터 구조](2)[비트 연산]

불 대수논리값을 수로 표현하기 위해 사용0 = False, 1 = True비트 연산: 어느 내장 자료형에든 연산 가능&(and): 둘 다 1일때만 1|(or): 둘 중 하나만 1이여도 1~(not): 0이면 1, 1이면 0^(xor): 둘 중 하나만 1이어야 1예시) a = 1010, b = 1101 계산a&b = 1000a|b = 1111~a = 0101a^b = 0111논리 연산: 참 거짓 판별, 0이면 거짓, 그 이외의 값은&&(and): 둘 다 참이면 참||(or): 둘 중 하나만 참이여도 참!(not): 참 거짓 바꾸기예시) a = 1, b = 0, c = -1a&&b = 거짓, a&&c = 참!b = 참쉬프트 연산: 비트를 옆으로 이동시킴, 이동 시 없어지는 비트는 삭제하고 남은 자리는 논리적..

CS/컴퓨터 구조 2025.01.08

[컴퓨터 구조](1)[정보의 저장]

컴퓨터는 이진수로 자료를 처리한다.이진수: 0, 1 수를 셈예시) 우리가 10진수로 10을 셀 때, 1,2,3...,9까지 세고 1을 올림하여 세는 것처럼 2진수에서 2를 셀 떄도 1자리를 올린다. 2(십진수) = 10(이진수) 정보의 저장메모리에 이진수 비트 패턴들을 저장하고 불러오는 방식으로 컴퓨터는 동작한다.(폰 노이만 구조) 이때, 메모리에서 비트를 하나하나 읽는 것이 아닌 8개의 비트인 1바이트를 기준으로 읽는다. 그래서 메모리 1바이트마다 주소를 지정하고 읽을 수 있다.1바이트를 이진수 비트로 표시하면 10101010처럼 8자리 숫자가 된다. 너무 시인성이 떨어져서 2진수가 아닌 16진수로 나타내기도 한다. 1바이트를 4비트씩 끊어서 16진수 2개로 만든다.예시) 10100010(2진수) = ..

CS/컴퓨터 구조 2025.01.07
728x90
반응형