我坚持输入字符串,显示输入的字符串并将字符串大写转换为小写。
我必须使用emu8086.inc,但我不知道如何将此代码转换为接受字符串而不是数字/整数。是否有人愿意就此事进一步指导?
8086 asm CODE:
include 'emu8086.inc'
ORG 100h
LEA SI, msg1
CALL print_string
CALL scan_num
MOV AX, CX
; print the following string:
CALL pthis
DB 13, 10, 'You have entered: ', 0
CALL print_num
RET
msg1 DB 'Enter the number: ', 0
DEFINE_SCAN_NUM
DEFINE_PRINT_STRING
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
DEFINE_PTHIS
END
提前谢谢。
答案 0 :(得分:0)
我不确定emu8086.inc包含的功能。
在Linux系统上,您可以使用系统调用,但我不确定从未使用过Linux。在Windows上,您最好通过链接MSVCRT.dll或Windows提供的控制台功能(请参阅Console functions)来包括C函数(如scanf),该函数与Kernell32.dll链接。我将查看汇编程序文档,了解如何链接到dll并调用各个函数。 C运行时MSVCRT.dll还包括函数“toupper”,它将字符串转换为大写。 Windows可能有类似的功能,但我不确定。