汇编问题求解,这个问题我自己确实做不来

2023-12-09 02:43:04 +08:00
 tiRolin

题目要求如下

在屏幕的第一行显示数据 belles 。 belles db "Reading is a happy thing. For those who love reading, once they read it," 。请根据需要编写子程序,实现:依次取走字符,并让字符从其位置跌落到屏幕底部并消失。

我自己的想法是将做好几个循环来写,比如第一个循环让第一个字符往下掉,第二个就让第二个往下掉啥的,但是我写了一个发现做这样的循环直接运行之后 DosBox 会直接卡死,问 GPT ,但是 GPT 自己给的代码总是有问题,百度一下也只能找到一个代码,那个代码也不能实现题目要求的效果,做了几个小时了还卡在这

我真的没办法了,所以我来请教各位,求求各位大佬帮帮我吧 如果给不了代码,给我点思路也行,我自己会去试的

970 次点击
所在节点   汇编
3 条回复
passive
2023-12-09 07:00:50 +08:00
呃… 啥硬件也不说,啥系统也不说,即使 Intel 也分个 int 16h/21h/80h 或者 syscall 吧
shendaowu
2023-12-09 10:34:26 +08:00
要延时或者定时器之类的东西吧?另外不知道你是不是用了循环来做延时,是的话模拟器可能会限制程序的运行速度,凭感觉设置循环次数的话可能会长时间无响应。不过我感觉可能性最大的还是你的程序有 BUG ,导致死循环了。学过调试汇编程序吗?学过的话单步执行看看吧。
shendaowu
2023-12-09 11:17:01 +08:00
另外贴代码嫌花的积分太多的话推荐试试本站的记事本功能。在右上角。那个好像是不花积分的。要点发布别人才能通过链接看到你发布的内容。

找 bug 的能力应该是基本只能通过练习提升的,很少练习经常依靠别人这种能力应该是很难提升的。前一句网上搜不到类似的观点,但是能搜到调试需要直觉的,我觉得直觉这个东西应该是基本只能通过练习提升的。虽然练习可能是提升调试能力的大头,但是还是有不少相关的套路的。如果 OP 感觉在这方面提升空间比较大的话推荐看看相关的文章和书籍。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/998869

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX