C8051F120/1/2/3/4/5/6/7
158
Rev. 1.2
13.2. Integer and Fractional Math
MAC0 is capable of interpreting the 16-bit inputs stored in MAC0A and MAC0B as signed integers or as signed frac-
tional numbers. When the MAC0FM bit (MAC0CF.1) is cleared to ‘0’, the inputs are treated as 16-bit, 2’s comple-
ment, integer values. After the operation, the accumulator will contain a 40-bit, 2’s complement, integer value.
Figure 13.2 shows how integers are stored in the SFRs.
When the MAC0FM bit is set to ‘1’, the inputs are treated at 16-bit, 2’s complement, fractional values. The decimal
point is located between bits 15 and 14 of the data word. After the operation, the accumulator will contain a 40-bit,
2’s complement, fractional value, with the decimal point located between bits 31 and 30. Figure 13.3 shows how
fractional numbers are stored in the SFRs.
-(2
15
)
2
14
2
13
2
12
2
11
2
10
2
9
2
8
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0
-(2
39
)
2
38
2
33
2
32
2
31
2
30
2
1
2
0
2
2
2
29
2
3
2
28
2
4
High Byte
Low Byte
MAC0OVR
MAC0ACC3 : MAC0ACC2 : MAC0ACC1 : MAC0ACC0
MAC0A and MAC0B Bit Weighting
MAC0 Accumulator Bit Weighting
Figure 13.2. Integer Mode Data Representation
-1
2
-1
2
-2
2
-3
2
-4
2
-5
2
-6
2
-7
2
-8
2
-9
2
-10
2
-11
2
-12
2
-13
2
-14
2
-15
-(2
8
)
2
7
2
2
2
1
2
0
2
-1
2
-30
2
-31
2
-29
2
-2
2
-28
2
-3
2
-27
High Byte
Low Byte
MAC0OVR
MAC0ACC3 : MAC0ACC2 : MAC0ACC1 : MAC0ACC0
MAC0A, and MAC0B Bit Weighting
MAC0 Accumulator Bit Weighting
MAC0RND Bit Weighting
* The MAC0RND register contains the 16 LSBs of a two's complement number. The MAC0N Flag can be
used to determine the sign of the MAC0RND register.
1
2
-1
2
-2
2
-3
2
-4
2
-5
2
-6
2
-7
2
-8
2
-9
2
-10
2
-11
2
-12
2
-13
2
-14
2
-15
High Byte
Low Byte
* -2
Figure 13.3. Fractional Mode Data Representation
Summary of Contents for C8051F120
Page 2: ...C8051F120 1 2 3 4 5 6 7 2 Rev 1 2 Notes ...
Page 8: ...C8051F120 1 2 3 4 5 6 7 8 Rev 1 2 26 2 Flash Programming Commands 318 26 3 Debug Support 321 ...
Page 16: ...C8051F120 1 2 3 4 5 6 7 16 Rev 1 2 Notes ...
Page 48: ...C8051F120 1 2 3 4 5 6 7 48 Rev 1 2 ...
Page 98: ...C8051F120 1 2 3 4 5 6 7 98 Rev 1 2 ...
Page 106: ...C8051F120 1 2 3 4 5 6 7 106 Rev 1 2 Notes ...
Page 183: ...C8051F120 1 2 3 4 5 6 7 Rev 1 2 183 Notes ...
Page 184: ...C8051F120 1 2 3 4 5 6 7 184 Rev 1 2 ...
Page 214: ...C8051F120 1 2 3 4 5 6 7 214 Rev 1 2 Notes ...