sophiaserpentia: (Default)
[personal profile] sophiaserpentia
Is there anyone here who knows of an online resource that explains in relatively plain language how to debug programs written in MIPS assembly language? The assignment is due tomorrow and I'm getting nowhere. I got one program done by simply bumbling around until the damn thing worked. I'm at the point I would trade sexual favors for an explanation of why the target of my second program's jump-and-link call to a subroutine differs in high-order four bits from instruction program counter 0x00400090, while the class examples, which look just like mine as far as I can tell, work just fine. You don't even have to tell me what the hell that even means. Just tell me what three-letter diphthong is out of place.

I can figure anything out with the right documentation, but documentation on this is useless; there is nothing, anywhere, written for an amateur or newcomer. Google is totally failing to save my ass the way it does when I have questions about Java, PHP, XML, or anything else. My TA is AWOL. Figuring out what the hell exceptions mean and how to debug this crap was not covered in lecture.

This has gotta be a form of hazing or something.

Date: 2010-05-10 05:27 am (UTC)
From: [identity profile] redslime.livejournal.com

I've not written MIPS assembly, but post some code here. I've written assemply for a RISC processor that is mips like, but many years ago. Do you have a link to a page for the assembler manual?

Post code that works and yours. If you don't want to post e-mail to redslime@livejournal.com.

You might ask for help on some linux hackers sites. The only people that write assembly any more are kernel hackers.

Date: 2010-05-10 05:41 am (UTC)
From: [identity profile] sophiaserpentia.livejournal.com
My despair is somewhat lifted, because I got the program to work. Not as elegantly as I would have liked -- the subroutine was optional for extra credit. So my assignment is turned in, but I'm still a bit frustrated by this whole experience. It was humbling.

As for the manual, I've been using a printed book, lecture notes, class examples, and a few things I've found on the web. The wikipedia page is not, actually, a bad reference, though I also found another bit of advice or two here and there:
http://en.wikipedia.org/wiki/MIPS_architecture
http://www.cs.clemson.edu/~mark/subroutines/mips.html

I can send the code for the program on which I was trying out the subroutine call where it would not have counted for extra credit. It's long, so I will email rather than post it.

Date: 2010-05-10 05:49 am (UTC)
From: [identity profile] redslime.livejournal.com

OK, I'll take a look. I've probably written more assembly than anyone you have met, but it has been over ten years since any real world need came up. I've written a couple of kernels and many driver routines and a bit of glue code.

Assembly is very hard because it does not tolerate any deviance. No reason to feel bad.

Profile

sophiaserpentia: (Default)
sophiaserpentia

December 2021

S M T W T F S
   1234
567891011
12131415161718
19202122232425
2627282930 31 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 28th, 2025 04:42 pm
Powered by Dreamwidth Studios