진법
- 자릿값
- 2진수 2k, 8진수 8k, 16진수 16k
- 10진수로
- Σ dk·bk
- 10진수에서
- 기수로 나누고, 나머지를 아래에서 위로 읽음
- 16진수 ↔ 2진수
- 16진수 한 자리 = 4비트
- 2의 보수
- 비트를 반전하고 1을 더함
공식 모음, 모든 주제의 핵심 풀이 단계, 연습 문제 6개가 들어 있으며 전체 풀이는 맨 뒤에 있습니다.
−97를 8비트 2의 보수 패턴으로 쓰세요. 그 패턴을 부호 없는 2진수로 읽으면 10진수 값 U는 얼마일까요?
1000 1101 AND 1011 1010의 8비트 결과가 되도록 비트를 설정하세요. 결과의 값 R은 십진수로 얼마입니까?
카르노 맵으로 F(A, B, C) = Σm(0, 3, 4, 6, 7)의 최소 합의 곱(POS) 형태를 구하시오. 합항(인수)은 몇 개(N)인가?
상승 에지 트리거 T 플립플롭이 Q = 0에서 시작하여 그림의 입력을 상승 클록 에지 8번에 걸쳐 받는다. Q의 상태는 몇 번(N) 바뀌는가?
UART가 19200 baud로 8N2 형식의 바이트를 보냅니다: 데이터 비트 8개, 패리티 없음, 정지 비트 2개, 그리고 시작 비트. 초당 전송할 수 있는 데이터 바이트의 최대 개수를 구하시오.
16 MHz 클록의 마이크로컨트롤러가 UART 보율을 fclk/(16·D)로 설정하며, D는 가장 가까운 정수로 반올림한 값입니다. 목표는 38400 baud입니다. 실제 보율의 백분율 오차(너무 빠르면 양수)를 구하시오.
답: U = 159
위치 기수법: 각 자리의 값은 그 숫자에 밑의 거듭제곱을 곱한 것입니다. 2진수의 자리값은 1, 2, 4, 8, 16, …, 16진수는 1, 16, 256, …이며 A–F는 10–15를 뜻합니다. 8비트 2의 보수에서 가장 왼쪽 비트는 +128이 아니라 −128의 값을 가지며, 이렇게 음수를 저장합니다.
답: R = 136
비트 설정: 각 비트는 2의 거듭제곱(128, 64, …, 1)의 값을 가집니다. 16진수 한 자리는 정확히 네 비트이고, 8비트 2의 보수에서 맨 왼쪽 비트의 값은 −128입니다. 비트 연산은 각 비트 자리를 따로 처리합니다.
AND는 두 비트가 모두 1인 곳에서만 1입니다.
답: N = 2
카르노 맵: 칸은 그레이 코드(00, 01, 11, 10) 순서로 배열되므로, 가장자리를 넘어 이웃한 칸을 포함해 이웃한 칸은 정확히 한 변수만 다릅니다. 모든 1이 덮일 때까지 1들을 1, 2, 4, 8, 16칸의 직사각형으로, 가능한 한 크고 가능한 한 적게 묶으세요. 각 그룹은 그 안에서 일정하게 유지되는 변수로 이루어진 곱항 하나입니다. 2ᵏ칸의 그룹은 변수 k개를 잃습니다. 무정의항(X)은 그룹을 키우는 데 쓸 수 있지만 반드시 덮을 필요는 없습니다. 0들을 묶으면 최소 POS 형태가 나옵니다.
모든 그룹은 2ᵏ칸의 직사각형입니다. 가장자리 칸은 반대쪽 가장자리의 칸과 이웃합니다.
답: N = 4
플립플롭과 카운터: 플립플롭은 클록의 활성 에지에서만 바뀝니다. D는 입력을 복사합니다(Q⁺ = D). T는 T = 1이면 토글합니다. JK는 00이면 유지, 01이면 리셋, 10이면 셋, 11이면 토글합니다. n비트 이진 카운터는 상태가 2ⁿ개이고 2ⁿ을 법으로 세며, mod-N 카운터는 0, 1, …, N − 1을 거쳐 다시 0으로 돌아가고 2ⁿ ≥ N인 가장 작은 n개의 플립플롭이 필요합니다. 리플 카운터는 단마다 주파수가 절반이 되므로 mod-N 카운터의 마지막 출력은 fclk/N으로 동작합니다. 플립플롭 n개의 존슨 카운터는 상태가 2n개, 링 카운터는 n개입니다.
T 플립플롭은 T = 1이면 상승 에지마다 토글하고 T = 0이면 유지합니다.
답: RB = 1745 B/s
UART: 비동기 직렬 링크는 각 바이트를 프레임으로 보냅니다. 시작 비트 1개(low), 데이터 비트, 선택적 패리티 비트, 정지 비트 1~2개(high)입니다. 보율은 초당 비트 수이므로 한 비트는 Tb = 1/baud 동안 지속되고, n비트 프레임은 n/baud 동안 지속됩니다. 흔히 쓰는 8N1 형식은 바이트당 10비트입니다. 보율 발생기는 클록을 나눕니다: baud = fclk/(16·D)이며 D는 정수이므로 실제 보율은 목표값과 조금 다릅니다. 오차가 약 2 % 미만이면 보통 허용됩니다.
답: e = 0.1603 %
UART: 비동기 직렬 링크는 각 바이트를 프레임으로 보냅니다. 시작 비트 1개(low), 데이터 비트, 선택적 패리티 비트, 정지 비트 1~2개(high)입니다. 보율은 초당 비트 수이므로 한 비트는 Tb = 1/baud 동안 지속되고, n비트 프레임은 n/baud 동안 지속됩니다. 흔히 쓰는 8N1 형식은 바이트당 10비트입니다. 보율 발생기는 클록을 나눕니다: baud = fclk/(16·D)이며 D는 정수이므로 실제 보율은 목표값과 조금 다릅니다. 오차가 약 2 % 미만이면 보통 허용됩니다.
오차가 약 2 % 미만이면 보통 허용됩니다.
ExamProblems · examproblems.com/courses/digital-electronics