Print_string或print_char还是什么?用什么? (NASM)

时间:2015-10-13 16:38:34

标签: string assembly char nasm

我有这个程序,其中用户输入分数,我的程序告诉其等效的字母等级。我的程序应该包括B +和C +,但是,它并没有这样做。

即使我在B +范围内输入分数,它仍会输出B.如果我在C +范围内输入分数,则输出C.

我要把我代码的某些部分放进去。 ' C'部分有效,但问题出现在C +'中。我相信问题出在我的print_char中。我也试过使用' Cplus'然后print_string但它仍然无法正常工作。这是:

outmsg1 db "The letter grade is: ",0 


C:
mov eax, outmsg1
call print_string
mov eax, 'C'
call print_char 
jmp Z

Cplus:
mov eax, outmsg1
call print_string
mov eax, 'C+'
call print_char  
jmp Z

1 个答案:

答案 0 :(得分:0)

print_char采用单个字符参数。

Cplus:
mov eax, outmsg1
call print_string
mov eax, 'C'
call print_char  
mov eax, '+'
call print_char  
jmp Z