![[컴퓨터학개론] AI시대의 컴퓨터 개론 - 내용 점검 문제 3장](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdHifmQ%2FbtsLCqSOiNu%2F9jz5XgKtqBGI4GVRmcqo81%2Fimg.jpg)
본 게시글은 AI시대의 컴퓨터 개론 - 내용 점검 문제 3장 풀이입니다. 제가 이 책을 공부하면서 풀었던 풀이의 흔적이므로 정답이 아닐 수 있습니다. 혹여나 틀린 부분이 있어 오류를 댓글로 지적해주신다면 감사하겠습니다.
객관식
1. 정보의 크기를 나타내는 것이 아닌 것은?
A. 비트
B. 바이트
C. 보수
D. 워드
2. 컴퓨터의 정보처리 단위에 관한 설명으로 옳지 않은 것은?
A. 가장 작은 정보 단위를 비트$_{bit}$라 한다.
B. 연속적으로 4개의 비트가 모인 정보 단위를 니블$_{nibble}$이라 한다.
C. 바이트$_{byte}$는 총 256가지 종류의 정보를 저장할 수 있다.
D. 워드는 항상 32비트이다.
3. 정보의 처리단위 크기를 바르게 나타낸 것은 무엇인가?
A. 비트 < 니블 < 바이트 < 워드
B. 니블 < 비트 < 워드 < 바이트
C. 비트 < 바이트 < 니블 < 워드
D. 니블 < 워드 < 비트 < 바이트
4. 정보처리 단위가 바르게 짝지어지지 않은 것은?
A. B$_{Byte}$ - $2^0$ Byte
B. KB$_{Kilo \space Byte}$ - $2^{10}$ Bytes
C. MB$_{Mega \space Byte}$ - $2^{40}$ Bytes
D. PB$_{Peta \space Byte}$ - $2^{50}$ Bytes
5. 1의 보수에 대한 설명으로 옳지 않은 것은?
A. 1의 보수는 주어진 이진수의 비트를 각각 0은 1로, 1은 0으로 변환하는 방법이다.
B. 4비트의 이진수 0100의 1의 보수는 1011이 된다.
C. 1의 보수 방법으로 음수를 표현할 수 있다.
D. 1의 보수에서 0은 하나로 표현된다.
0000, 1111 총 두 개
6. 16진수 $18B_{16}$을 10진수로 바르게 변환한 값은?
A. 395
B. 396
C. 378
D. 404
256 + 128 + 11 = 395
7. 2의 보수에 대한 설명으로 옳지 않은 것은?
A. 4비트의 2의 보수에서 -8을 표현할 수 없다.
B. 4비트의 2의 보수에서 음수는 4비트의 가장 왼쪽 비트가 1이다.
C. $n$비트에서 $-a$의 2의 보수 계산 방법은 $2^n - a$이다.
D. -4를 4비트 2의 보수로 표현하면 $1100_2$이다.
4비트 2의 보수에서는 -8($1000_2$)을 표현할 수 있다.
4비트 2의 보수는 -8부터 +7까지 표현 가능하고 최상위 비트가 1인 경우 음수, 0인 경우 양수를 나타낸다.
8. 이진수 0110의 1의 보수는?
A. 0111
B. 1001
C. 1010
D. 1110
9. n개의 비트로는 표현의 한계가 있으므로 n비트와 메모리에 표현 범위를 초과하는 경우를 무엇이라 하는가?
A. 정규화
B. 오버플로
C. 가수
D. EBCDIC
10. 10진수 소수 0.125를 2진수 소수로 변환한 값은?
A. 0.1
B. 0.01
C. 0.001
D. 0.11
11. 부동소수에 대한 설명으로 옳지 않은 것은?
A. 부동소수는 정규화된 실수의 표현이다.
B. 부동소수는 고정소수점보다 매우 큰 정수 또는 매우 작은 소수의 표현이 가능하다.
C. 부동소수는 소수 부분과 지수 부분으로 구분할 수 있는데, 이를 각각 지수와 가수라 한다.
D. 부동소수의 저장 방법에는 크게 단정도 형식과 배정도 형식, 두 가지가 있다.
소수 부분과 지수 부분을 각각 가수$_{mantissa}$와 지수$_{exponent}$라 한다.
12. 논리회로의 NOT(’)에 해당하는 논리기호는?
B.
13. 부동소수의 저장 방법인 단정도 형식과 배정도 형식에 대한 설명으로 옳지 않은 것은?
A. 이 저장 방법은 부동소수의 표현을 부호부, 지수부, 가수부로 나누어 이진 표현으로 저장하는 방법이다.
B. 단정도 형식과 배정도 형식의 부호부는 양수이면 1, 음수이면 0이 저장된다.
C. 단정도 형식과 배정도 형식의 가수부는 부동소수의 가수를 왼쪽부터 저장하고 오른쪽 나머지 비트는 모두 0으로 채운 2진수를 저장한다.
D. 두 형식의 차이는 정보표현의 크기로 단정도는 전체가 32비트이며 배정도는 전체가 64비트로 배정도가 단정도에 비해 지수와 가수의 표현 크기가 크다.
부호부는 양수일 때 0, 음수일 때 1이 저장됨. 2의 보수 표현과 일관성을 유지하기 위한 IEEE 754 표준 규칙임
14. 논리회로 그림에 해당하는 논리식은 무엇인가?
A. $x_3\space' \cdot (x_1\space' + x_2 \cdot x_3)$
B. $x_2\space' \cdot (x_1\space' + x_1 \cdot x_3)$
C. $x_2 \cdot (x_1\space' + x_1 \cdot x_3)$
D. $x_1\space' (x_2\space' + x_3 \cdot x_4)$
$(x_{1}x_{3} + x_{1}\space')(x_{2}\space') = x_2\space' \cdot (x_1\space' + x_1 \cdot x_3)$
15. 국제 표준 문자 코드가 아닌 것은?
A. ASCII
B. WWW
C. EBCDIC
D. Unicode
16. 논리 연산의 법칙 중 맞지 않는 것은?
A. $0 + x = x$
B. $1 \cdot x = 1$
C. $x \cdot (y + z) = x \cdot y + x \cdot z$
D. $x + (x \cdot y) = x$
$1 \cdot x = x$임
17. 컴퓨터의 정수 연산 방식으로 옳지 않은 것은?
A. 컴퓨터의 덧셈 방식은 수학에서 이용하는 방식과 같다.
B. 컴퓨터의 덧셈 방식은 정해진 비트를 넘어서는 올림은 무시해야 한다.
C. 컴퓨터의 뺄셈 방식은 1의 보수를 이용한 음수의 표현 방법을 많이 이용한다.
D. 컴퓨터의 뺄셈 방식, 즉 $a - b$의 연산은 $a + (-b)$로 변환해 덧셈을 수행한다.
B. 오버플로우 처리 방식, 하드웨어의 물리적 제한 때문에 필요함
C. 1의 보수는 거의 사용되지 않음
18. 지수 부분이 표현할 수 있는 하한보다 작은 수를 나타내어 정밀도를 상실하는 것을 무엇이라 하는가?
A. 언더플로$_{underflow}$
B. 오버플로$_{overflow}$
C. 문법 오류$_{syntax \space error}$
D. 논리 오류$_{logical \space error}$
19. 함수 $y = f(A, B, C)$에서 입력 변수인 $A, B, C$가 모두 1 또는 0의 값만을 가지며, 결과값인 $y$ 역시 1 또는 0만을 갖는 것을 무엇이라 하는가?
A. 논리연산자
B. 부동소수
C. 정형화
D. 논리함수
입력 변수들(A, B, C)과 출력값(y)이 모두 0 또는 1만을 값으로 가지는 함수를 논리함수라고 한다. 이러한 논리함수는 진리표로 표현이 가능하다.
AND, OR, NOT 등은 논리연산자이고, 부동소수는 실수 표현 방식이며 정형화는 규칙에 따른 표현을 의미한다.
20. 부동소수를 단정도 형식으로 저장하는 경우, 지수부에 사용하는 저장 방식은?
A. 127 편향지수
B. 1023 편향지수
C. 1의 보수
D. 2의 보수
단정도 부동소수점에서는 지수부를 8비트로 표현하고, 음수 지수도 표현해야 하므로 편향지수$_{biased \space exponent}$ 방식을 사용한다.
단정도의 경우 127을 bias로 사용해 실제 지수값에 127을 더한 값을 저장한다(예, 실제 지수 2는 129로 저장).
1023 편향지수는 배정도에서 사용되며, 1의 보수와 2의 보수는 정수의 음수 표현 방식이다.
괄호채우기
1. 사람은 일상 생활에서 10진수를 사용하나, 컴퓨터는 ___를 사용한다.
2진수
컴퓨터는 전기 신호를 사용하므로 on/off 두 가지 상태를 표현하는 2진수를 사용한다.
2. 주기억장치, 저장장치의 크기를 표현하는 단위 중 $2^{30}$의 바이트 수를 갖는 단위는 ___이다.
GB$_{Gigabyte}$
KB($2^{10}$), MB($2^{20}$), GB($2^{30}$), TB($2^{40}$) 순
3. 2진수 $10110.1011_2$을 16진수로 바꾸면 결과는 ___이다.
$16.B_{16}$
4. 2진수 11010.101을 정규화된 부동소수로 표현한 결과에서 부호는 0이고, 가수는 ___이고 지수는 4이다.
1010101
정규화된 부동소수점 $1.x \times 2^n$ 형태로 만든다.
주어진 $11010.101_2$를 정규화하면 $1.1010101 \times 2^4$가 되고, 여기서 소수점 이후 부분인 $1010101$이 가수가 된다.
5. 부동소수를 저장할 때 IEEE 754 표준인 단정도 형식과 배정도 형식은 ___, ___, ___으로 나누어 저장된다.
부호, 가수, 지수
6. 10진수 -14를 8비트 2의 보수 방법으로 나타내면 ___이다.
11110010
먼저 14를 2진수(00001110)로 변환하고, 모든 비트를 반전해 1의 보수(11110001)를 만든 후 1을 더해(11110010) 2의 보수를 구한다.
7. 2의 보수에서 4비트 정수 0101과 1011의 뺄셈을 한 결과는 ___이다.
1010
8. 전 세계의 모든 언어를 하나의 코드 체계 안으로 통합하기 위해 만들어진 코드는 ___이다.
유니코드$_{unicode}$
9. 부울 대수에서 논리곱 연산자 AND는 ___으로, 논리합 연산자 OR는 ___으로, 논리 부정 연산자 NOT은 ___로 표시한다.
$\cdot, \space+, \space'$
10. 2진수와 8진수의 관계에서 2진수 ___자리는 8진수 한 자리로 쉽게 변환이 가능하다.
3
주관식
1. 여러분이 사용하는 컴퓨터에서 메모리의 용량과 저장장치의 용량이 얼마인지 알아보시오.
`16GB, 256GB`
2. 4비트로 구성되는 16개 수의 조합을 2진수와 8진수, 16진수로 나타내시오.
10진수 / 2진수(4비트) / 8진수 / 16진수
0 / 0000 / 0 / 0
1 / 0001 / 1 / 1
2 / 0010 / 2 / 2
3 / 0011 / 3 / 3
4 / 0100 / 4 / 4
5 / 0101 / 5 / 5
6 / 0110 / 6 / 6
7 / 0111 / 7 / 7
8 / 1000 / 10 / 8
9 / 1001 / 11 / 9
10 / 1010 / 12 / A
11 / 1011 / 13 / B
12 / 1100 / 14 / C
13 / 1101 / 15 / D
14 / 1110 / 16 / E
15 / 1111 / 17 / F
3. 다음 8비트의 2진수를 각각 8진수와 16진수로 변환하시오.
A. 10111010
`8진수: 272, 16진수: BA`
B. 01010011
`8진수: 123, 16진수: 53`
C. 11100101
`8진수: 345, 16진수: E5`
D. 10010111
`8진수: 227, 16진수: 97`
4. 다음 10진수를 16비트의 2의 보수로 변환하시오.
A. -7
0000 0000 0000 0111 → 1111 1111 1111 1000 → `1111 1111 1111 1001`
B. -124
0000 0000 0111 1100 → 1111 1111 1000 0011 → `1111 1111 1000 0100`
5. 다음 지수를 32비트의 단정도 형식의 지수부에 저장하는 127 편향지수로 변환하시오.
A. 0
`127`
B. 2
`129`
C. 5
`132`
D. 9
`136`
단정도 부동소수점에서 편향지수는 실제 지수에 127을 더한 값이다. 이는 음수 지수를 표현하기 위해 사용되며, 8비트로 저장된다.
계산식: 편향지수 = 실제지수 + 127
6. 다음 부동소수를 32비트의 단정도 형식으로 변환하시오.
A. -1.875
`1 10000000 11100000000000000000000`
B. 26.625
`0 10000011 10101010000000000000000`
단정도 부동소수점 변환 과정
1. 부호비트 결정 (양수:0, 음수:1)
소수점 이동해 1.xxx 형태로 정규화1. 지수에 127을 더해 8비트 편향지수 계산
2. 가수부는 소수점 이후 23비트 표현
7. 아스키코드를 이용해 문자열 “Hello”가 메모리에 저장된 모습을 보이시오.
`01001000 01100101 01101100 01101100 01101111`
H(72), e(101), l(108), l(108), o(111)를 각각 8비트 2진수로 표현했다. ASCII는 7비트로 문자를 표현하지만, 일반적으로 8비트(1바이트) 단위로 저장되므로 앞에 0을 추가했다.
8. 유니코드에서 한글은 어떻게 구성되는지 알아보시오.
`완성형: AC00-D7AF(11,172자)`
`조합형: 1100-11FF(초성, 중성, 종성의 자소 영역)`
`확장 A: A960-A97F(고어) 확장 B: D7B0-D7FF(고어)`
9. 다음 정수의 연산을 8비트에서 2의 보수로 변환해 수행하시오.
27 - 3
`→ 27 + (-3)`
`→ 27 = 00011011, -3 = 11111101 (2의 보수)`
`→ 00011011`
`+ 11111101`
`= 00011000 = 24`
10. 다음과 같은 32비트 단정도 형식의 부동소수를 2진수로 표현하시오.
1 01111100 110011000000000000000000
`-0.09375`
변환 과정
1. 부호비트(1) = 음수
2. 지수부(01111100) = 124 → 편향지수 -3(124-127)
3. 가수부(110011) = 1.110011 × 2^-3
4. 1.110011(2) × 2^-3 = 0.001110011(2) = 0.09375(10)
부호 적용 = -0.09375
'CSE > CS 기초' 카테고리의 다른 글
[컴퓨터학개론] AI시대의 컴퓨터 개론 - 내용 점검 문제 5장 (2) | 2025.01.01 |
---|---|
[컴퓨터학개론] AI시대의 컴퓨터 개론 - 내용 점검 문제 4장 (4) | 2025.01.01 |
[컴퓨터학개론] AI시대의 컴퓨터 개론 - 내용 점검 문제 2장 (0) | 2025.01.01 |
[컴퓨터학개론] AI시대의 컴퓨터 개론 - 내용 점검 문제 1장 (2) | 2025.01.01 |
[CS50] 자료구조 - 트라이 (0) | 2024.06.18 |
컴퓨터 전공 관련, 프론트엔드 개발 지식들을 공유합니다. React, Javascript를 다룰 줄 알며 요즘에는 Typescript에도 관심이 생겨 공부하고 있습니다. 서로 소통하면서 프로젝트 하는 것을 즐기며 많은 대외활동으로 개발 능력과 소프트 스킬을 다듬어나가고 있습니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!