Khác biệt giữa bản sửa đổi của “Biểu diễn số âm”

Nội dung được xóa Nội dung được thêm vào
Đã lùi lại sửa đổi 6329491 của Fdoublef2008 (Thảo luận)
Dòng 11:
Phương pháp dấu lượng dùng [[bit cực trái]] làm [[bit cực trái|bit dấu]] (''sign bit'') – tức đại diện cho dấu của số – theo quy ước: nếu bit dấu là 1 thì số là số dương (1 tương đương với dấu "+"), ngược lại, nếu nó là 0 thì số là số âm (0 tương đương với dấu "−"). Các bit còn lại được dùng để biểu diễn độ lớn của số (hay [[giá trị tuyệt đối]] – ''absolute value'' – của số).
 
Để biểu diễn một số âm về dạng nhị phân có dấu với mẩu K bit là lấy số cần biểu diễn cộng thêm ''2''<bigsup>K-1</bigsup> sau đó biểu diễn chúng ở hệ nhị phân
 
Theo phương pháp này, một byte 8 bit sẽ có 7 bit (trừ đi bit dấu) được dùng để biểu diễn cho các số có giá trị từ 0000000 (0<sub>10</sub>) đến 1111111 (127<sub>10</sub>). Khi sử dụng bit dấu, ý nghĩa của 7 bit trên sẽ thay đổi, và ta có thể biểu diễn các số từ −127<sub>10</sub> đến +127<sub>10</sub>. Trong phương pháp dấu lượng, số 0 có thể được biểu diễn ở hai dạng, đó là 00000000 (+0) và 10000000 (−0).
 
Ví dụ: giả sử mẫu 8 bit, khi sử dụng phương pháp dấu lượng, số 5<sub>10</sub> được biểu diễn sang hệ nhị phân là: 10000101, còn số −5 là 01111011. (vì -5+2<sup>7</sup>=123, biểu diễn nhị phân là 01111011)
 
So sánh với cách biểu diễn số âm mà ta thường sử dụng, ta thấy phương pháp dấu lượng có nhiều điểm tương đồng. Trong hệ thập phân, khi muốn biểu diễn số có dấu, ta đặt dấu cần biểu diễn ngay trước giá trị tuyệt đối của số. Phương pháp dấu lượng cũng đặt dấu ngay trước giá trị tuyệt đối của số, chỉ có khác ở chỗ thay dấu "+" bằng "0" và "−" bằng "1". Có lẽ vì sự tương đồng này, một vài máy tính thế hệ đầu tiên (như [[IBM 7090]]) đã sử dụng phương pháp dấu lượng khi biểu diễn số âm.