I was testing out a rudimentary python 16-bit x86 assembler with the
code from:
http://canonical.org/~kragen/demo/fr-016.html
and, although my source:
org 100
mov ax,13
int 10
les bp,[bx]
l loop
stosb
adc ax,di
adc ax,1132
jmp loop
results in a slightly different 15 bytes:
0000000: b813 00cd 10c4 2faa 11f8 1532 11eb f8 ....../....2...
I still get the same visual output in QEMU.
So:
I think the 1132 is an immediate, and the FS override is there (a) as
padding or (b) to potentially confuse disassemblers.
dc -e '16i2o 1132p' yields 1000100110010, so it seems reasonable that
the second adc helps create a nice LFSR-like term. But I don't
understand why your attempts at manually removing the FS override
wouldn't have given the same behavior that I see.
-Dave
--
To unsubscribe: http://lists.canonical.org/mailman/listinfo/kragen-discuss