使用位运算实现8位二进制数组加法
ba8_t ba8_add(ba8_t a, ba8_t b) { ba8_t res = 0; int carry = 0; // 进位标志位 for (int i = 0; i < 8; i++) { int sum = get_bit_8(a, i) + get_bit_8(b, i) + carry; carry = sum > 1 ? 1 : 0; set_bit_8(res, i, sum % 2); } return res; }
原文地址: https://www.cveoy.top/t/topic/nzGO 著作权归作者所有。请勿转载和采集!