Tôi biết nó có liên quan đến phần bù 2 và thêm 1, nhưng tôi không thực sự hiểu làm thế nào bạn có thể mã hóa thêm một số với cùng số bit khi nói đến số âm.
Tôi biết nó có liên quan đến phần bù 2 và thêm 1, nhưng tôi không thực sự hiểu làm thế nào bạn có thể mã hóa thêm một số với cùng số bit khi nói đến số âm.
Câu trả lời:
Hãy suy nghĩ về nó trong những điều khoản. Lấy số 2 bit có dấu trước:
000 = 0
001 = 1
010 = 2
011 = 3
Bây giờ chúng ta hãy có một số tiêu cực:
111 = -1
110 = -2
101 = -3
Đợi đã, chúng ta cũng có
100 ...
Nó phải là số âm, bởi vì bit-bit là 1. Vì vậy, về mặt logic, nó phải là -4.
(Chỉnh sửa: Như WorldEngineer chỉ ra một cách đúng đắn , không phải tất cả các hệ thống đánh số đều hoạt động theo cách này - mà là những hệ thống bạn đang hỏi về.)
Bởi vì không có hai loại số trong phạm vi số nguyên, mà là ba: số âm, số 0 và số dương. Zero phải chiếm một vị trí (sẽ không thực tế nếu không thể đại diện cho số 0 ...), do đó, lớp dương hoặc lớp âm phải từ bỏ một vị trí. Thực tế thường là phạm vi tích cực phải thực hiện sự hy sinh đó ở một mức độ nhất định tùy ý, nhưng ở mức độ thao túng bit, có một số điều mà quyết định này giúp thuận tiện hơn.
Có ba cách cơ bản để biểu diễn các số nguyên đã ký trong nhị phân: phần bù 2, phần bù 1 và độ lớn ký hiệu. (Biquinary đã đi theo cách của Dodo Bird từ lâu.)
Bổ sung và cường độ ký hiệu của 1 có hai giá trị 0, +0 và -0, mỗi giá trị có một đại diện duy nhất. Bổ sung của 2 chỉ có một giá trị 0 và một đại diện.
Bây giờ, một trường gồm các bit N có thể mã hóa 2 ^ N giá trị. Trừ phần bù một trong 2 và bạn có 2 ^ N-1 = 2 ^ (N-1) + 2 ^ (N-1) + 1. Vì biểu diễn cho số 0 là tất cả các bit 0 và dấu + là 0, sẽ có thêm một đại diện khác không có thể với bit dấu được đặt thành 1.
Đây là một cách rất dài để nói phần bù của 2 đại diện cho các giá trị trong phạm vi - (2 ^ (N-1)) .. + (2 ^ (N-1) - 1).
Phần bù 1 thực sự có lợi thế hơn phần bù 2 nếu bạn đang thực hiện các tính toán xử lý tín hiệu số nguyên. Hoạt động bổ sung của 1 vốn đã bị cắt ngắn về không. Bổ sung của 2 cắt ngắn về phía vô cực. Tôi đã học được điều này theo cách CỨNG ...