hodgesmr
hodgesmr

Reputation: 2785

Printing a string and variable in MIPS

Here's the C representation of what I'm trying to do in MIPS assembly:

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

I know that I can do a syscall to easily print x= and I can also do a syscall to print the int x (which is stored in a register). However, that prints them like this (let's say x is 5):

x=

5

How can I make them print on the same line?

Upvotes: 1

Views: 24528

Answers (3)

Paul R
Paul R

Reputation: 213190

Look at the Fibonacci.asm example: http://courses.missouristate.edu/KenVollmar/MARS/Fibonacci.asm - it seems to be a good example of exactly what you need to do - look at the part near the print: label. It looks like you needs syscall 4 for printing the x = part and syscall 1 for printing the integer itself.

Upvotes: 3

WhirlWind
WhirlWind

Reputation: 14110

If you print with two separate characters, 'x' and '=', you should avoid the newline problem.

Upvotes: 1

ndim
ndim

Reputation: 37895

Use a syscall for printing the x= which does not add a line feed.

What that syscall might be is system specific, and you are not mentioning anything about the system.

Upvotes: 1

Related Questions