Difference between revisions of "Tutorial: Assembly Language with the Raspberry Pi"

From dftwiki3
Jump to: navigation, search
(Created page with "--~~~~ ---- <bluebox> Work in progress... I'm putting this together as you're reading this... Stay tuned for a more polished tutorial. This is a quick introduction to writ...")
 
(First Program)
Line 32: Line 32:
  
 
</source>
 
</source>
 +
<br />
 +
==Create the program==
 +
<br />
 +
* ssh to the Pi using the Terminal Window.  Refer to [[http://cs.smith.edu/dftwiki/index.php/Tutorial:_Client/Server_on_the_Raspberry_Pi#Server.2FClient_setup| this page for how to do this]].
 +
* Use your favorite editor on the Pi (mine is emacs), create a file called '''first.s''' and enter this code.  If you are interested in bypassing the editor, simply type this:
 +
 +
    cat > first.s
 +
 +
:and paste the code above.  Then press ENTER, Control-D, ENTER, and this should create the file for you.
 +
<br />
 +
<center>[[Image:PiAssembly1.png|500px]]</center>
 
<br />
 
<br />

Revision as of 07:26, 3 July 2015

--D. Thiebaut (talk) 08:19, 3 July 2015 (EDT)


Work in progress... I'm putting this together as you're reading this... Stay tuned for a more polished tutorial. This is a quick introduction to writing assembly language programs for the Pi.
You can find more tutorials here:


Setup


  • Please refer to this page for information on how to set your system up. I'm using a Mac connected to the Pi via wifi, and ssh-ing to the it in a Terminal window.


First Program


  • This example is taken from thinkingeek.com's tutorial on assembly on the Pi:


/* first.s
   from thinkingeek.com
   http://thinkingeek.com/2013/01/09/arm-assembler-raspberry-pi-chapter-1/
   Defines a main function that returns 2 as an exit code.
	
*/
	
.global main    /* 'main' must be visible by the C compiler. */
	
.func main      /* declare 'main' as a function              */
main: 
    mov r0, #2       /* load immediate value 2 into Register r0 */
    bx lr            /* return 2 to Operating Sytem             */


Create the program


  • ssh to the Pi using the Terminal Window. Refer to [this page for how to do this].
  • Use your favorite editor on the Pi (mine is emacs), create a file called first.s and enter this code. If you are interested in bypassing the editor, simply type this:
    cat > first.s

and paste the code above. Then press ENTER, Control-D, ENTER, and this should create the file for you.


PiAssembly1.png