I think that your expected answer is wrong. Here's my solution. I'll group the bits into nybbles so that it would look readable.
0.1000 0000 0000 0000 0000 0000 <- added zero to the rightmost to fill in the nybble
- 0.0001 1001 1001 1001 1001 1000 <- added zero to the rightmost to fill in the nybble
_________________________________
Get the 2's complement of 0.0001 1001 1001 1001 1001 1000
.
1.1110 0110 0110 0110 0110 0111 (1's complement)
+ 0.0000 0000 0000 0000 0000 0001
_________________________________
1.1110 0110 0110 0110 0110 1000 (2's complement)
Add the 2's complement to 0.1
.
0.1000 0000 0000 0000 0000 0000
+ 1.1110 0110 0110 0110 0110 1000
_________________________________
10.0110 0110 0110 0110 0110 1000
Since the overflow is 1
, disregard it. It just signifies that the final answer is a positive number since 0.1
is larger than 0.0001 1001 1001 1001 1001 1000
. Therefore, the final answer is 0.011001100110011001101000
.