Avatar billede tosssen Nybegynder
07. december 2003 - 13:16 Der er 3 kommentarer og
1 løsning

Simpel SPARC assembly

Jeg sidder og skal skrive partition delen af quicksort i sparc assembly language. Partition skal skrives som en leaf procedure. Mit problem er at jeg får fejl når jeg skriver til registeret %o0, hvor returværdien skal placeres. Da jeg er nødt til at returnere noget er dette et problem jeg er nødt til at løse. Er der nogen der har en ide om hvad der kan være galt?
P.S.: Svar gerne hurtigt (jeg skal aflevere opgave i morgen om det...)
Avatar billede arne_v Ekspert
07. december 2003 - 14:22 #1
Har du prøvet at bede gcc outputte assembler og studere det
genererede ?
Avatar billede tosssen Nybegynder
07. december 2003 - 14:38 #2
Ja - jeg er kommet til den slutning at det virker når jeg sætter registeret til en speciel værdi, så er der ikke fejl, men programmet virker ikke efter hensigten, når den samme værdi altid returneres. Fejlen, som jeg får er en "segmentation fault", så mit bud er at de fejlskabende returværdier må lave ged i en hukommelsesforespørgsel et eller andet sted uden for partition.
Avatar billede tosssen Nybegynder
07. december 2003 - 14:40 #3
Muligvis har jeg implementeret partition forkert... Så jeg prøver lige at skrive det forfra. Det kunne jo være at en korrekt fungerende partition ikke vil give fejlskabende output
Avatar billede tosssen Nybegynder
07. december 2003 - 19:15 #4
Jeg har omskrevet hele skidtet og nu virker det. Jeg ved ikke hvad der var galt, men i hvert fald virker det nu, så spørgsmålet bør derfor lukkes
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester