.global main // "Export" the identifier "main" .text main: push {lr} // Save the return address on the stack push {fp} // Save the frame pointer on the stack // Explained later in CS255 movw r0, #:lower16:HelloStr movt r0, #:upper16:HelloStr bl printf // Call printf function pop {fp} // Pop the frame pointer pop {pc} // Pop the return address into PC // Explained later in CS255 .data HelloStr: // Label marking this location .asciz "Hello World\n" // The Hello string .end |