Gast
#517268
Hallo! Ich habe eine Frage zur Registerverwendung. Ich habe ein Ass-Programm geschrieben, und will dieses im C-Code auffrufen. Es werden 2 Parameter (char) übergeben. Nun muss ich ja im assembler-prog die richtigen register verwenden, also die, in denen der GCC die Parameter ablegt, oder? Ich habe zwar lange gesucht, bin auch auf eine recht vage registerverwendung gestoßen http://www.nongnu.org/avr-libc/user-manual/FAQ.html#faq_reg_usage was ist gemeint mit "Function call conventions: Arguments - allocated left to right, r25 to r8. All arguments are aligned to start in even-numbered registers (odd-sized arguments, including char, have one free register above them). This allows making better use of the movw instruction on the enhanced core" heißt das, wenn ich zb zwei werte übergeben, dass diese dann in R25 und R24 gespeichert sind? überschneiden sie sich dann nicht mit den rückgabewerten, bzw ist so eine überschneidung egal? hoffe mir kann jemand helfen vielen dank und schöne grüße philipp