0

Alright, I got this assembler class, and we're doing mips, and such.
Anyway, I got this problem, see.

I have to read in a number in binary (sign magnitude), convert it to decimal, then convert that to a string of ascii characters, and then print them out, with a - sign if necessary.

The only thing I have problems with is printing them out.
Say I've made a character, on the stack.
Say it's
0x33000000
ASCII, 3<null><null><null>
So it would print 3, then stop (when it hits null)

However!
I have to load an ADDRESS into $a0 to print a string.

How do I load the address of a register??

Say I have my string in $t6. I want to print that string, which is basically one ascii character, from 0-9 (maybe -), then three null characters.
How do I load the ADDRESS and not the VALUE of $t6 into $a0.
(I can't use labels)

I bet it's simple... I hope...

2
Contributors
2
Replies
4
Views
13 Years
Discussion Span
Last Post by SexConker
0

I don't know MIPS, but you need to move the register value into a local variable.

in x86 assembler it would be something like:

mov esp[-3], eax

where esp is the stack pointer, and -3 was where you wanted the local variable.

0

Yeah, I got it last night.
Apparantly I had to so a
la $a0, 0$(sp)

I thought I did that before.
I tried SO many things, loading words, bytes, etc,
addresses of all sorts of offsets, you name it.

Oh well, thanks anyway.

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.