산업기술
뺄셈은 피감수를 음수 값으로 취급하여 덧셈으로 변환할 수 있습니다. 예를 들어 7 − 5는 7 + (−5)가 됩니다.
양수 이진 표현을 마스터한 후, 뺄셈을 같은 덧셈 루틴으로 수행할 수 있도록 음수를 인코딩하는 것이 다음 단계입니다.
십진법에서는 마이너스 기호가 최상위 자릿수 앞에 붙습니다(예: −5). 이진 하드웨어에서는 하이 또는 로우 두 상태만 있으므로 부호를 비트 패턴 자체 내에 인코딩해야 합니다.
이 문맥에서 "마이너스" 기호 같은 세 번째 기호는 없습니다. 한 비트를 수학적 부호를 나타내도록 예약하는 것이 한 해결책입니다:

비트를 위치 가중치 외의 목적으로 사용하면 혼동을 초래할 수 있습니다. 예를 들어 1101₂는 최상위 비트를 부호로 처리하지 않으면 13으로 읽힙니다.
먼저 최대 크기를 수용하는 데 필요한 총 비트 폭을 정한 뒤, 모든 연산이 그 폭 안에서 이루어지도록 합니다.
아래 예에서 최상위 비트를 부호로 취급하여 범위를 −7(1111₂)부터 +7(0111₂)로 제한함으로써 오해를 방지합니다.
−5를 1101₂로 인코딩하는 것이 부호-크기 체계로, 최상위 비트가 값이 아닌 부호를 나타내며 위치 순수성을 실용성과 맞바꿉니다.
최상위 비트는 부호를 나타내고, 나머지 비트는 표준 위치 값(2의 거듭제곱)을 유지합니다.
부호-크기는 개념적으로 단순하지만 이진 덧셈을 복잡하게 만듭니다. −5(1101₂)를 일반 덧셈으로 다른 수에 어떻게 더할까요?
별도의 덧셈 알고리즘을 만들면 목적에 어긋나며, 필산 뺄셈과 동등해져 계산상 이점이 없습니다.
대안인 보수법은 음수를 표준 이진 덧셈 방법으로 더할 수 있게 하며 위치 가중치와 자연스럽게 정렬됩니다.
이 방식에서 최상위 비트는 여전히 범위를 구분하지만 이제 음의 자리 가중치(예: −8)를 가집니다. 예를 들어 −5는 다음과 같이 인코딩됩니다:

오른쪽 세 비트로 0~7 크기 표현 가능, 최상위 비트는 0 또는 −8을 나타내므로 −7(1001₂ = −8 + 1 = −7)부터 +7(0111₂ = 0 + 7 = 7)까지 모든 정수 표현 가능.
양수 값은 그대로지만 음수 값은 보수 연산이 필요합니다.

오른쪽 열의 음수 이진수는 오른쪽 세 비트와 최상위 비트의 음의 8자리 가중치의 합이므로 양수와 같은 진행을 따르지 않습니다.
대신 오른쪽 세 비트를 설정하여 음의 8자리 값에 더했을 때 원하는 음수 합계가 나오게 해야 합니다.
오른쪽 세 비트는 양수 대응값의 2의 보수입니다. 예:

음의 가중치 비트가 4번째 비트(−8)일 때, 임의 양수의 2의 보수는 그 수의 음수 등가를 얻기 위해 −8에 더해야 하는 값입니다.
2의 보수 계산은 간단합니다: 모든 비트 반전(1의 보수) 후 1 더하기. 예를 들어 5(101₂)의 2의 보수를 구하려면 먼저 010₂로 반전, 다시 1을 더해 011₂를 얻으며 이는 3비트 2의 보수에서 −5를 나타냅니다.
최상위 비트를 포함해 모든 비트를 한 번에 조작해도 2의 보수 생성은 동일하게 작동합니다. 0101₂(5)를 음수 5로 변환:
모든 비트 반전 → 1010₂; 1 더하기 → 1011₂, 4비트 2의 보수에서 −5를 나타냄.
2의 보수 변환을 수행하기 전에 음의 가중치 비트 위치가 고정되어 있어야 합니다. 8번째 비트가 음의 가중치 비트(10000000₂)라면 0000101₂의 2의 보수는 1111011₂가 되어 8비트 2의 보수에서 −5를 나타냅니다.
따라서 8비트 시스템에서 +5는 00000101₂, −5는 11111011₂입니다.
관련 워크시트:
산업기술
Java TreeSet 이 튜토리얼에서는 예제를 통해 Java TreeSet 클래스의 다양한 연산과 메서드를 학습합니다. Java Collections Framework의 TreeSet 클래스는 트리 자료구조의 기능을 제공합니다. NavigableSet 인터페이스를 확장합니다. TreeSet 생성하기 트리 집합을 생성하려면 먼저 java.util.TreeSet 패키지를 임포트해야 합니다. 패키지 임포트 후 Java에서 TreeSet을 생성하는 방법은 다음과 같습니다. TreeSet<Integer> numbers = ne
부품 및 소모품 부품수량비고 아두이노 우노 (Arduino UNO)1 토글 스위치 SPDT7 M3 x 8 소켓 헤드 캡 스크류15 M3 너트3 Adafruit 표준 LCD 16x2 (흰색/파란색)1 40mm 스탠드오프4 Adafruit 실리콘 커버 연선 30AWG1여러 색상 스위치 드레스 너트 1/4-409외관용, 선택 사항 견고한 금속 푸시버튼 (흰색 LED 링, 16mm)1 프로젝트 소개 이진수를 배우기 위해 Autodesk Circuits에서 만든 게임입니다. 온라인 플레이 가능: https://circuits.i