使用Linux中的Nasm在控制台中的文本中使用箭头键导航

使用Linux中的Nasm在控制台中的文本中使用箭头键导航,linux,text,assembly,console,nasm,Linux,Text,Assembly,Console,Nasm,我正在做一个分为两部分的项目。第一个是某种文本可视化工具(在控制台中),其中包括用户可以使用箭头键在文本中导航 现在,我甚至不知道如何解决这个问题,我在nasm做过的最大的一件事就是一个常规的表达式分析器,仅此而已。我想我应该显示文本,但在最后,不将控件返回给操作系统。最后三行 mov eax, 1 mov ebx, 0 int 80h 这样我就可以开始捕捉箭头键了。因此,如果用户按下向上箭头键,指针将在包含文本的缓冲区中向后移动80个空格,依此类推。(这是编辑用的) 我真的不知道这是否可能

我正在做一个分为两部分的项目。第一个是某种文本可视化工具(在控制台中),其中包括用户可以使用箭头键在文本中导航

现在,我甚至不知道如何解决这个问题,我在nasm做过的最大的一件事就是一个常规的表达式分析器,仅此而已。我想我应该显示文本,但在最后,不将控件返回给操作系统。最后三行

mov eax, 1
mov ebx, 0 
int 80h
这样我就可以开始捕捉箭头键了。因此,如果用户按下向上箭头键,指针将在包含文本的缓冲区中向后移动80个空格,依此类推。(这是编辑用的)


我真的不知道这是否可能,但任何建议或建议或链接到我可以调查多一点将是可怕的

我没有UNIX汇编经验,但您可以使用ncurses(或者更简单地限制您使用VT-100终端,当然您永远不会遇到任何不兼容的情况)。 以下是VT-100控制代码:。使用
stty-icanon
设置规范模式。使用常规fread(标准输入法)从控制台读取并识别箭头键代码:

up      EscA    EscOA
down    EscB    EscOB 
right   EscC    EscOC
left    EscD    EscOD.

然后使用转义序列清理屏幕并绘制新图像-这将是一个相当硬的代码,但汇编程序也是如此。

在汇编代码中不要这样做。您检查了ncurses吗?哈哈,我需要,这是一门课的最后一门课