Печать строки и переменной в MIPS - PullRequest
1 голос
/ 22 апреля 2010

Вот C-представление того, что я пытаюсь сделать в сборке MIPS:

printf ("x=%d\n", x);

Я знаю, что могу сделать системный вызов, чтобы легко напечатать x =, и я также могу сделать системный вызов, чтобы напечатать int x (который хранится в регистре). Тем не менее, это печатает их так (скажем, х равен 5):

х =

5

Как заставить их печатать на одной строке?

Ответы [ 3 ]

3 голосов
/ 22 апреля 2010

Посмотрите на пример Fibonacci.asm: http://courses.missouristate.edu/KenVollmar/MARS/Fibonacci.asm - кажется, это хороший пример того, что вам нужно сделать - посмотрите на деталь рядом с меткой print:.Похоже, вам нужно syscall 4 для печати части x = и syscall 1 для печати самого целого числа.

1 голос
/ 22 апреля 2010

Используйте системный вызов для печати x=, который не добавляет перевод строки.

То, чем может быть системный вызов, зависит от системы, и вы ничего не упоминаете о системе.

0 голосов
/ 22 апреля 2010

Если вы печатаете с двумя отдельными символами, 'x' и '=', вам следует избегать проблемы перевода строки.

...