// Eine Funktion zum Konvertieren einer dezimalen in eine binäre Darstellung einer Zahl
int decToBinary(int n)
{
int binäreNum[32];
int i =0;
während (n> 0)
{
binärNum[i] =n % 2;
n =n / 2;
i++;
}
for (int j =i - 1; j>=0; j--)
printf("%d", binäreNum[j]);
printf("\n");
}
// Eine Funktion zum Konvertieren von Binärdaten in das Zweierkomplement
int BinaryTo2sComplement(int BinaryNum[], int n)
{
int i;
für (i =0; i
binärNum[i] =!binaryNum[i];
für (i =n - 1; i>=0; i--)
{
if (binaryNum[i] ==0)
binärNum[i] =1;
anders
brechen;
}
}
// Treiberprogramm
int main()
{
int n;
printf("Geben Sie eine Dezimalzahl ein:");
scanf("%d", &n);
decToBinary(n);
printf("Sein Zweierkomplement ist:");
int binäreNum[32];
int len =32;
int decToBin =decToBinary(n);
binärTo2sComplement(binaryNum, len);
decToBinary(decToBin);
0 zurückgeben;
}
„
Ausgabe:
„
Geben Sie eine Dezimalzahl ein:10
1010
Sein Zweierkomplement ist:0101
„