Trixter
Veteran Member
For example, "cmp [bx],dl" seems to take 15 cycles if bx is even and 13 cycles if bx is odd, which is very surprising to me! I guess there must be some remnants of the 8086's 16-bit bus in the 8088. Even weirder, "and [bx+0x100],dx" takes 27 cycles, the same as "and [bx+0x100],dl" rather than the 35 cycles taken by "and [bp+0x100],dx". There is a similar discrepancy between "bp+si+0x100" and "bp+di+0x100" EAs. And I've only explored a small part of the space of instructions!
8-O Never knew that! Those are some pretty big discrepancies!
I've resumed work on my benchmark and should have something out by the weekend, but sadly the numbers in the database won't really help you because I explicitly leave interrupts enabled during benchmarking and also because I store microseconds elapsed instead of cycles. They'll get very close, but that's it.