Lines Matching +full:ls +full:- +full:bits
5 | Description: Converts a 64-bit binary integer to bcd.
7 | Input: 64-bit binary integer in d2:d3, desired length (LEN) in
12 | Output: LEN bcd digits representing the 64-bit integer.
15 | The 64-bit binary is assumed to have a decimal point before
17 | shift and a mul by 8 shift. The bits shifted out of the
23 | to force the first byte formed to have a 0 in the upper 4 bits.
28 | A3. Multiply the fraction in d2:d3 by 8 using bit-field
35 | A5. Add using the carry the 64-bit quantities in d2:d3 and d4:d5
38 | A6. Test d7. If zero, the digit formed is the ms digit. If non-
39 | zero, it is the ls digit. Put the digit in its place in the
40 | upper word of d0. If it is the ls digit, write the word
51 | d2: upper 32-bits of fraction for mul by 8
52 | d3: lower 32-bits of fraction for mul by 8
53 | d4: upper 32-bits of fraction for mul by 2
54 | d5: lower 32-bits of fraction for mul by 2
55 | d6: temp for bit-field extracts
74 moveml %d0-%d7,-(%a7)
104 addl %d5,%d3 |add lower 32 bits
106 addxl %d4,%d2 |add with extend upper 32 bits
114 beqs first_d |if non-zero, form byte & write
117 aslw #4,%d7 |first digit in upper 4 bits d7b
118 addw %d1,%d7 |add in ls digit to d7b
131 lslw #4,%d7 |move it to upper 4 bits
137 moveml (%a7)+,%d0-%d7