본문 바로가기
Study/컴퓨터구조

[2-1] 컴퓨터 정보의 표현

by 투말치 2020. 4. 17.

목차

    반응형

     

    정보 표현 단위

    1. 비트(Bit)

    -컴퓨터에서 정보를 표현하는 최소 단위

    -0 또는 1로 표현

     

    2. 바이트(Byte)

    -8bit=1Byte

    -1바이트는 십진수로 0~255 범위의 값을 가질 수 있음

     

    3. 워드 (Word)

    -메모리에 저장되는 정보의 기본 단위

    -1word=2byte or 4byte  => 프로세서마다 워드 단위가 다름

     

    2진수 정수에서 음수를 표현하는 방법

    • 부호화 크기 표현
      -최상위 비트를 부호 비트로 사용하는 방식이다.
      -최상위 비트가 0이면 양수, 1이면 음수
      -만약 n비트로 구성된 2진수라면 최상위 비트는 부호비트, 나머지 (n-1)비트는 수의 절댓값을 나타낸다.

    • 1의 보수
      -n비트의 2진수에서 절댓값을 나타내는 (n-1)비트를 모두 반전한다. (1은 0으로 0은 1로)
      -최상위 비트는 부호를 나타냄(만약 음수면 1, 양수면 0)

    • 2의 보수
      -1의 보수의 결과값에 1을 더하는 방식
      -실제로 컴퓨터에서 사용하는 방식

    2진수의 논리 연산

    1. 기본 논리 연산


    -AND 연산 : 모든 입력값이 1일때만 결과값이 1이고 나머지는 0이다.

    -OR 연산 : 입력값에서 1이 하나라도 있으면 결과값이 1이고 모두 0일때 결과값이 0이다.

    -XOR 연산 : 입력값이 모두 동일한 경우에만 결과값이 1이고 나머지는 결과값이 0이다.

    -NOT 연산 : 입력값의 반대가 결과값이다.

     

     

    2. 응용 논리 연산

     

    1)선택적 세트(Selective-set) 연산

    -선택된 특정 비트를 1로 세트시키는 연산

    -1로 세트시킬 데이터와 특정 비트의 위치에 1로 세트된 데이터를 OR연산함

     

    2)선택적 보수(Selective-complement) 연산

    -선택된 특정 비트를 반전하는 연산

    -반전이 필요한 데이터와 반전시킬 비트의 위치에 1로 세트된 데이터를 XOR연산함 

     

    3)마스크(Mask) 연산

    -특정 비트를 0으로 만드는 연산

    -0으로 만들 데이터와 반전시킬 비트의 위치에 0으로 세트된 데이터를 AND연산함 

     

    4)삽입(Insert) 연산

    -특정 위치에 새로운 비트값을 삽입하는 연산

    -삽입 연산을 수행하려면 그 전에 마스크 연산이 수행되어야 함 (마스크 연산은 삽입할 위치의 비트들에 해준다. 값을 0으로 리셋해야 새로운 비트값을 삽입할 수 있기 때문)

    -삽입할 비트와 마스크 연산의 결과 값을 OR연산함

     

    5)비교(Compare) 연산

    -두 입력값을 비교하는 연산

    -XOR연산을 이용해 비교함

     

    6)순환 이동(Circular shift)

    -최상위 혹은 최하위에 있는 비트가 반대편 끝으로 이동해서 비트가 순환한다.

    -순환 좌측 이동, 순환 우측 이동

     

    7)산술적 이동(Arithmetic shift)

    -부호 비트인 최상위 비트는 이동하지 않고 수의 크기를 나타내는 비트들만 이동한다.

     

     

    더보기

    문제

    1. -11을 2의 보수 기반 8bit열로 나타내세요.

     

    2. 다음 중 응용 논리 연산을 모두 고르세요.
    ① 선택적 보수 연산
    ② XOR 연산
    ③ 삽입 연산
    ④ 산술적 이동

     

    3. 삽입 연산 전에 수행해야 할 연산은?

     

    4. A=1100 0010 이고 마스크 연산을 이용해 상위 4비트를 0으로 만들려고 한다. 이때, A와 마스크 연산을 수행할 B의 비트열은? 

     

    5. 메모리에 저장되는 정보의 기본 단위는?

     

     

    더보기

    1. 1111 0101
    =>11의 절댓값을 8bit로 나타내면 0000 1011이다. 이 수를 1의 보수로 만들면 1111 0100인데 여기에 1을 더해야 2의 보수가 되기 때문에 답은 1111 0101이다.

     

    2. ①, ③, ④
    =>선택적 보수 연산, 삽입 연산, 산술적 이동은 응용 논리 연산이고,
    XOR 연산은 기본 논리 연산이다.

     

    3. 마스크 연산
    => 삽입 연산 전에 마스크 연산을 통해 삽입할 위치의 비트들을 0으로 리셋하는 과정이 필요하다.

     

    4. 0000 1111
    =>
    상위 4비트를 0으로 만들어야 하기 때문에 B 비트열의 상위 4비트가 0이고 하위 4비트는 건드리지 않기 위해 1111로 이루어져야 한다.

     

    5. 워드
    =>
    메모리에 저장되는 정보의 기본 단위는 워드이다. 워드의 단위는 프로세서마다 다르다.

     

     

     

     

     

    반응형