Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我对组装很陌生。我总是对数字感到困惑 有人可以帮助我吗?我正在使用 TASM... 所以 8066 汇编器 有什么好的参考资料可以使用吗?
SCREEN_CLEARER: mov ax,1720h mov cx,2000 mov bx,0 L2: mov es:[bx],ax add bx,2 loop L2 ret
我真的不明白1720h,2000是什么。我也不太清楚如何阅读 move es:[bx],ax
非常感谢
看起来像 DOS 代码,试图填充(文本)屏幕缓冲区左右......,IIRCax将是字符(0x20 == ' ' == 空格)结合文本属性(0x17 == 前景色/背景色)。
ax
2000 将是 80x25 ;)
es将为此目的指向屏幕缓冲区。
es
L2: mov es:[bx],ax add bx,2 loop L2
将字符和属性 (in ) 从2000 个单词 (== 2 个字节)移动ax到每个单词中,直到变为 0 (这就是操作码的含义)。es:[0]cxloop
es:[0]
cx
loop