; Guide to Assembly Language
        ; Section 12.10 Complete Program
        ; Copyright 2019, James T. Streib
        .data
x        real4  5.0
y        real4  2.0
z        real4  ?

a        sqword 1           
b        sqword 2
c        sqword 3
d        sqword 4
         
       .code
main     proc
                                      
       fld x
       fst y
       fstp z

       fadd x
       fsub y
       mov rax,rax
       mov rax,rbx
       mov rbx,rax
       mov rbx,rbx

       mov rax,r8                
       mov rax,r15                
       mov rbx,r8
       mov rbx,r15

       mov r8,rax
       mov r8,rbx
       mov r8,r8
       mov r8,r15

       mov r15,rax
       mov r15,rbx
       mov r15,r8
       mov r15,r15

       mov rax,1
       mov rcx,876543210
       mov rdx,-1
       mov rbx,-876543210
         

       mov rax,9876543210
       mov rcx, 112233445566778899
       mov rdx,-9876543210
       mov rbx,-112233445566778899
         
       mov rax,a            
       mov rbx,b
       mov r8,c
       mov r15,d
         
       mov rax,a
       mov b,rax
         
       ret
main    endp
       end