我正在使用x86-64的Assembly中的Hello World工作。
我设法创建了一个按下Enter键时完成的按钮,但是当按下任意键时我必须完成它。
这是等待ENTER键的代码:
mov rax, 0
mov rdi, 0
mov rdx, 1
syscall
我不能使用任何int xh或类似的东西。只有系统调用。
谢谢!
答案 0 :(得分:3)
我已回答a similar question before,并提供了可直接使用系统调用的C代码,以执行您想要的操作。
以下是该代码到nasm的翻译,略有变化,以反映您只是检查是否按下了任何键,而不是特定的键:
Plane
基本思路是您必须编辑终端设置,阅读字符并重置设置。
答案 1 :(得分:1)
我对Cel Skeggs的答案中的代码做了一些改动。
这是一个完整的程序,可以一次打印一个读取键,然后在ENTER上退出。
@app.route('/trend', methods=['POST', 'GET'])
def run_tasks():
for i in range(0, 1):
app.apscheduler.add_job(func=getTrendingEntities, trigger='cron', args=[i], id='j'+str(i), second = 5)
return "Code run perfect"
@app.route('/loc', methods=['POST', 'GET'])
def getIntentAndSummary(self, request):
if request.method == "POST":
reqStr = request.data.decode("utf-8", "strict")
reqStrArr = reqStr.split()
reqStr = ' '.join(reqStrArr)
text_1 = []
requestBody = json.loads(reqStr)
if requestBody.get('m') is not None:
text_1.append(requestBody.get('m'))
return jsonify(text_1)
if (__name__ == "__main__"):
app.run(port = 8000)