Добавление двух байтовых байтов - PullRequest
1 голос
/ 16 февраля 2012

У меня есть двухбайтовый массив с прямым порядком байтов, который мне нужно добавить. Очевидно, этот код не работает.

for (int i=0;i<bytes1.getB1().length;i++){
    bAdded[i]=(byte) (bytes1[i]+bytes2[i]);
}

Как мне добавить эти два байтовых байта с прямым порядком байтов?

1 Ответ

0 голосов
/ 16 февраля 2012

Что вы подразумеваете под "не работает"?

Если вы имеете в виду, что он не выполняет перенос между байтами, вот как вы могли бы это сделать:

int carry = 0;

for (int i = 0; i < bytes1.getB1().length; i++) {
    int sum = bytes1[i] + bytes2[i] + carry;
    bAdded[i] = (byte) sum;
    carry = sum >> 8;
}

bAdded[bytes1.getB1().length] = carry;
...