Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 将CLS实现到BIOS INT10_Assembly_X86 16_Bios - Fatal编程技术网

Assembly 将CLS实现到BIOS INT10

Assembly 将CLS实现到BIOS INT10,assembly,x86-16,bios,Assembly,X86 16,Bios,最近切换到25x80屏幕模式,但光标不存在,请使用: MOV AX,01111 MOV BL,0 INT 010 问题是如何调用bios以获得清晰的屏幕 我在以下位置查看了Ralf Brown的Int x10中断列表: http://www.ctyme.com/intr/int-10.htm 发现AH=06和AH=07为: Int 10/AH=06h - VIDEO - SCROLL UP WINDOW Int 10/AH=07h - VIDEO - SCROLL DOWN WINDOW

最近切换到25x80屏幕模式,但光标不存在,请使用:

MOV AX,01111
MOV BL,0
INT 010
问题是如何调用bios以获得清晰的屏幕

我在以下位置查看了Ralf Brown的Int x10中断列表:

http://www.ctyme.com/intr/int-10.htm

发现AH=06和AH=07为:

Int 10/AH=06h - VIDEO - SCROLL UP WINDOW
Int 10/AH=07h - VIDEO - SCROLL DOWN WINDOW

我的问题的答案是:(一份副本)


从Edward处抄袭

显示您的整个节目。然而,我怀疑它是为int 10hIn的qbasicTry函数06h或07h编写的。Ralf Brown的中断列表AX=06和AX=07 INT10滚动窗口,但不是一个清除屏幕。它是AH=06h,AL设置为零,以清除Ralf Brown中断列表中写入的整个屏幕。这是的副本吗?或者?复制自上的@Edward的答案,无需署名(aka)。当您在另一个SO问题上找到问题的答案时,请将其作为副本关闭,而不是复制答案。(除非答案很长,涵盖了很多其他的东西。这里不是这样。)对不起,我以为一旦贴出来就变成了公共领域;将其发布在SO上会根据“SA抄送”许可证进行发布,允许其他人使用署名进行复制。此外,剽窃与侵犯版权是一个单独的问题。e、 g.如果我以自己的名义在某个地方发表莎士比亚的十四行诗,而不说我没有写,我就没有侵犯版权(作品属于公共领域),但任何对“我的”文章印象深刻的人都不应该因此而称赞我。是的。或者,在这种情况下,堆栈溢出没有复制信息,而是有一种机制将一个问题指向另一个问题作为重复。这就是为什么我在评论中问这个问题是否是其他问题的重复,所以我们可以将其作为重复关闭,而不是让别人复制答案。你不妨删除这个答案;这是另一本的直接副本。未来的读者应该按照副本阅读答案(以防更新),而不是本副本。这就是堆栈溢出支持重复链接的原因。
clearScreen:
pusha

mov ax, 0x0700  ; function 07, AL=0 means scroll whole window
mov bh, 0x07    ; character attribute = white on black
mov cx, 0x0000  ; row = 0, col = 0
mov dx, 0x184f  ; row = 24 (0x18), col = 79 (0x4f)
int 0x10        ; call BIOS video interrupt

popa
ret