Assembly

by Daniel Pimentel — Fri 11 November 2005

An assembly (or assembler) language, often abbreviated asm, is a low-level programming language for a computer, or other programmable device, in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture. In contrast, most high-level programming languages are generally portable across multiple architectures but require interpreting or compiling. Assembly language may also be called symbolic machine code.

Shell

guile

,pp (compile '(+ 32 10) #:to 'assembly)
(load-program
 ((:LCASE16 . 2))  ; Labels, unused in this case.
 8                 ; Length of the thunk that was compiled.
 (load-program     ; Metadata thunk.
  ()
  17
  #f              ; No metadata thunk for the metadata thunk.
  (make-eol)
  (make-eol)
  (make-int8 2)   ; Liveness extents, source info, and arities,
  (make-int8 8)   ; in a format that Guile knows how to parse.
  (make-int8:0)
  (list 0 3)
  (list 0 1)
  (list 0 3)
  (return))
 (assert-nargs-ee/locals 0)  ; Prologue.
 (make-int8 32)    ; Actual code starts here.
 (make-int8 10)
 (add)
 (return))
Assembly
2000-2016 by Daniel Pimentel under GFDL