解释一下这段汇编代码

来源:百度知道 编辑:UC知道 时间:2024/05/09 10:18:53
是一段延迟的函数,麻烦逐条解释,把原理说清楚,以及运行结果是什么效果~3q
void Delay(WORD NumTicks)
{
asm{
mov bx,0100h
}
d1:
asm{

mov cx,NumTicks
}
d2:
asm{
loop d2
dec bx
jnz d1

}
}

void Delay(WORD NumTicks) //括号内是延迟长度参数
{
asm{
mov bx,0100h //给bx赋值,十进制就是256
}
d1:
asm{

mov cx,NumTicks //把参数赋给cx
}
d2:
asm{
loop d2 //这是一个空循环,当cx不等于0时,先将cx减1,再跳回到d2,反复执行,直到cx为0止.
dec bx //bx减1
jnz d1 //判断bx是否等于0,不等于0则跳回d1处,把这几个小函数再重新执行一遍.即重新又给cx赋参数值,再执行空循环,空循环执行完了再将bx减1,再判断......直到bx为0,则退出.

}
}

分少了,多给点MMM我我教你~

我到是想这点分
但是,上面的老大已经搞定了!!