Keep DAA! (was Re: 8086 bugs)
trixter at oldskool.org
Sun Dec 11 01:41:15 CST 2005
Chuck Guzis wrote:
>>I don't think you can get any fewer instructions using this algorithm,
>>because you need to adjust the alphanumerics by an offset of 7, and
>>you need one extra instruction to set the inital carry flag boundary,
>>which makes 8 in total.
> I haven't found a shorter solution yet. Good work!
> So who needs DAA?
Anyone who wants to implement the nybble-to-hex functionality in a lot shorter
space, maybe? :-) This:
...is 30 bytes (accumulator forms included). This:
mov bx,offset hextable
...is a total of 22 bytes including the hex table. (I love xlat.) But our DAA
...is only 8 bytes.
If DAA were slow, I'd say ditch it. But DAA is only 4 cycles and according to
my real-world 8088 timings (slow night tonight), the DAA approach is only just
a hair slower than the XLAT method.
So I guess there *is* a need for DAA ;-)
Jim Leonard (trixter at oldskool.org) http://www.oldskool.org/
Want to help an ambitious games project? http://www.mobygames.com/
Or check out some trippy MindCandy at http://www.mindcandydvd.com/
More information about the cctalk