У меня есть функция, которая принимает два двоичных числа в виде массива целых чисел, добавляет числа, а затем возвращает сумму как новый массив целых чисел.Добавление двоичных чисел в Java
public static int[] addBin(int a[], int b[]){
int[] sum = {0, 0, 0, 0, 0, 0, 0, 0};
int carryover = 0;
int randombanana = 0;
int x = 7;
for(x = 7; x > 0; x--){
randombanana = a[x] + a[x] + carryover;
if(randombanana == 1){
sum[x] = 1;
carryover = 0;
}
else if(randombanana == 2){
sum[x] = 0;
carryover = 1;
}
else if(randombanana == 3){
sum[x] = 1;
carryover = 1;
}
else if(randombanana == 0){
sum[x] = 0;
carryover = 0;
}
else{
System.out.println("Either I [censored] up, or you [censored] up. I'm a genius so I'm going to assume you [censored] up");
}
}
if(carryover == 1){
sum[x] = 1;
}
return sum;
}
код прекрасно работает на холостых значные номера, включая номера, которые требуют несущих цифры, но на двойных или тройных чисел цифр он работает, когда число добавляется к себе, но не тогда, когда добавляются различные множественные числа цифр ,
Окончательный бит обрабатывается в отдельном, если оператор вне для цикла. –