เลขฐานสองแสดงเป็นฐาน 2 ใช้เพียงสองหลัก '0' และ '1' แต่ละหลักในเลขฐานสองคือ บิต .
ตัวอย่างเลขฐานสอง - 0100010111
ส่วนประกอบที่ 1
ส่วนเสริมของเลขฐานสองได้มาจากการกลับหลักของเลขฐานสอง นั่นคือ การแปลง 1 ด้วย 0 และ 0 ด้วย 1
ตัวอย่าง
1’s Complement of 101100 = 010011
ส่วนเสริมของ 2
ส่วนประกอบสองส่วนของเลขฐานสองนั้นได้มาจากการบวกหนึ่งเข้ากับส่วนเติมเต็มของเลขฐานสอง นั่นคือ ส่วนเสริมของ 1 + 1
ตัวอย่าง
2’s complement of 101101 is 010011.
โค้ดตัวอย่าง
รหัสเพื่อค้นหาส่วนประกอบหนึ่งและสอง -
#include <iostream>
#include<string.h>
using namespace std;
int main() {
char binary[10] = "01001011";
cout<<“Binary number is ”<<binary;
//once complement....
int length = strlen(binary);
for(int i=0;i<length;i++) {
if(binary[i] == '0') {
binary[i]= '1';
} else
binary[i] = '0';
}
cout<<“One’s Complement is ”<<binary<<endl;
// cout<<binary[length-1];
for(int i = length-1; i>=0; i--) {
// cout<<binary[i];
if(binary[i] == '0') {
binary[i] = '1';
//cout<<binary[i];
break;
} else {
binary[i] = '0';
}
}
cout<<“Two’s complement is ”<<binary;
return 0;
} ผลลัพธ์
Binary number is 01001011 One’s complement is 10110100 Two’s complement is 10110101