Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static int carry;
- uint16_t mul24(uint16_t in16, uint8_t in8)
- {
- uint8_t h = in16 >> 8;
- uint8_t l = in16 & 0xff;
- uint16_t mh = (uint16_t) in8 * h;
- uint16_t ml = (uint16_t) in8 * l;
- uint16_t r = 0;
- if (mh & 0xff00) {
- carry = 1;
- } else {
- carry = 0;
- r = mh;
- r <<= 8;
- r += ml;
- }
- return r;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement