next up previous
Next: APPENDIX E Up: No Title Previous: APPENDIX C

APPENDIX D

Assembler source code for the smallest self-replicating creature.

genotype: 0022abn  parent genotype: 0022aak
1st_daughter:  flags: 1  inst: 146  mov_daught: 22  breed_true: 1
2nd_daughter:  flags: 0  inst: 142  mov_daught: 22  breed_true: 1
InstExecC: 437  InstExec: 625954  origin: 662865379  Wed Jan  2 20:16:19 1991
MaxPropPop: 0.1231  MaxPropInst: 0.0568

nop_0   ; 00   0
adrb    ; 1c   1 find beginning
nop_1   ; 01   2
divide  ; 1f   3 fails the first time it is executed
sub_ac  ; 07   4
mov_ab  ; 19   5
adrf    ; 1d   6 find end
nop_0   ; 00   7
inc_a   ; 08   8 to include final dummy statement
sub_ab  ; 06   9 calculate size
mal     ; 1e  10
push_bx ; 0d  11 save beginning address on stack in order to `return' there
nop_0   ; 00  12 top of copy loop
mov_iab ; 1a  13
dec_c   ; 0a  14
if_cz   ; 05  15
ret     ; 17  16 jump to beginning, address saved on stack
inc_a   ; 08  17
inc_b   ; 09  18
jmpb    ; 15  19 bottom of copy loop (6 instructions executed per loop)
nop_1   ; 01  20
mov_iab ; 1a  21 dummy statement to terminate template



Thomas S.Ray
Thu Aug 3 15:47:29 JST 1995