问题描述:
帮我解释下这一很少断的汇编代码?排列9个数的小算法 帮我注释下每行什么意思 最好给个例子解释下
sort:
mov\x05\x05 bx,1
xor\x05\x05 di,di\x05\x05\x05;将di置0 \x05\x05
mov\x05\x05 cx,9
loop1:
mov\x05\x05 al,buf[di] ;取一个字节放入al中
cmp\x05\x05 al,buf[di+1] ;然后进行比较,
jnb\x05\x05 cotinue\x05 ;大于等于跳转到next1
xchg\x05 buf[di+1],al\x05;否则交换一下数据
mov\x05\x05 buf[di],al ;取al一个字节送入内存中
mov\x05\x05 bx,0\x05\x05\x05
cotinue:
inc\x05\x05 di ;di自加1
loop\x05 loop1
cmp\x05\x05 bx,0\x05\x05\x05
je\x05\x05 sort
看了好久都看不懂
我想知道它是怎样排序的 能给个例子结合说说吗 单单表面那些指令我都看得懂,可是不知道它怎样工作的,
sort:
mov\x05\x05 bx,1
xor\x05\x05 di,di\x05\x05\x05;将di置0 \x05\x05
mov\x05\x05 cx,9
loop1:
mov\x05\x05 al,buf[di] ;取一个字节放入al中
cmp\x05\x05 al,buf[di+1] ;然后进行比较,
jnb\x05\x05 cotinue\x05 ;大于等于跳转到next1
xchg\x05 buf[di+1],al\x05;否则交换一下数据
mov\x05\x05 buf[di],al ;取al一个字节送入内存中
mov\x05\x05 bx,0\x05\x05\x05
cotinue:
inc\x05\x05 di ;di自加1
loop\x05 loop1
cmp\x05\x05 bx,0\x05\x05\x05
je\x05\x05 sort
看了好久都看不懂
我想知道它是怎样排序的 能给个例子结合说说吗 单单表面那些指令我都看得懂,可是不知道它怎样工作的,
问题解答:
我来补答展开全文阅读