diff options
author | Paul Oliver <contact@pauloliver.dev> | 2024-02-29 01:50:44 +0100 |
---|---|---|
committer | Paul Oliver <contact@pauloliver.dev> | 2024-02-29 01:50:44 +0100 |
commit | cf9b3de8fcb590eed85112e3427b6223f643c90c (patch) | |
tree | d900e53ac2b2fddb12d6f56789701ee826edfac6 /README.md | |
parent | 2aaaca4299306b7a5bf62390c6028bc0a2c1ac73 (diff) |
Faults replace instructions randomly.
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 5 |
1 files changed, 2 insertions, 3 deletions
@@ -50,11 +50,10 @@ address is selected and a random instruction is written into it. *SALIS*' organisms read a simple language similar to ASM. This language
consists of 64 instructions, each with an associated name and symbol.
Whenever an organism performs an invalid instruction it's considered a *fault*.
-To preserve robustness, faulty instructions are simply ignored by the
-organisms and their IPs are incremented to the next address.
+When a *fault* is commited by any organism, the faulty instruction gets
+randomly replaced at that address and the organism's IP gets incremented.
#### Faults
-- IP or SP reaching ends of memory
- Perform a search or attempt a jump without a following key
- Writing to an allocated (but not owned) or invalid address
- Reading (loading) from an invalid address
|