在显示器上来回移动角色

问题描述

编写一个程序,该程序将从左到右移动一个字符,然后 按照指定的次数在PC的显示器上再次返回 由用户输入。将提示用户输入字符 显示以及来回移动多少次。输入“?” 和1会导致'?'在监视器上来回移动1 旅行。

您的程序必须只允许输入1到4之间的数字。 使用仅当值大于零时才允许退出的循环 并且少于四个。如果用户输入非法值,则必须 提醒他/她允许的值,并再次提示 数值。您不必在 字符,因为任何可打印的字符都可以。

请记住,如果您刚刚显示一个字符,光标将是 就在它的右边为了显示一个字符,您 将必须删除一个字符,然后显示 新位置中的字符。退格字符是字符 数字8,空格是字符数字32。请勿显示 字符位于第80位,因为这将导致光标 前进到下一行。所有输出必须在同一行上。

您还必须编写一个使光标变慢的过程 在屏幕上移动。现代cpu会如此快地移动光标 用户将看不到它的移动。您的延误程序必须是 不执行适当次数的循环。

这是我当前使用的程序,其中的字符“!”在屏幕上从左向右移动

    include PCMAC.Inc

    .MODEL SMALL

    .586
    .STACK 100h
    .DATA

theChar DB "!"

    .CODE

Delay   PROC

    push cx

        mov cx,0

For_2:  nop

        dec cx

        jnz For_2

        pop cx

        ret 



Delay   ENDP



MAIN  PROC

        _Begin

        mov cx,79 ;  display the char 79 times

For_1:  _PutCh  theChar

        call Delay

        _PutCh 8

        _PutCh 32

        dec cx

        jnz For_1

        _EXIT 0

MAIN  ENDP


END MAIN ; 

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)