diff options
author | Aryadev Chavali <aryadev@aryadevchavali.com> | 2023-11-03 08:14:40 +0000 |
---|---|---|
committer | Aryadev Chavali <aryadev@aryadevchavali.com> | 2023-11-03 08:14:40 +0000 |
commit | 134c06a6fe1c319ae295d5054387b23143215e8e (patch) | |
tree | d928a5245b66bb5b6977237077eb2f446f247c35 | |
parent | b4fce03177df15f200950591922298892f62a60e (diff) | |
download | ovm-134c06a6fe1c319ae295d5054387b23143215e8e.tar.gz ovm-134c06a6fe1c319ae295d5054387b23143215e8e.tar.bz2 ovm-134c06a6fe1c319ae295d5054387b23143215e8e.zip |
Added TODO and WIP tags for spec
-rw-r--r-- | spec.org | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -3,7 +3,7 @@ #+description: A specification of instructions for the virtual machine #+date: 2023-11-02 -* Data types +* WIP Data types There are 3 main data types of the virtual machine. They are all unsigned. There exist signed versions of these data types, though there is no difference in terms of bytecode between them. For an @@ -15,7 +15,7 @@ unsigned type <T> the signed version is simply S_<T>. | HWord | 32 | | Word | 64 | |-------+------| -* Instructions +* WIP Instructions An instruction for the virtual machine is composed of an *opcode* and, potentially, an *operand*. An /opcode/ represents the behaviour of the instruction i.e. what _is_ the instruction. The /operand/ is a @@ -32,7 +32,7 @@ general behaviour of the instruction: ~PUSH~, ~POP~, ~MOV~, etc. The complete opcode will be a combination of these two e.g. ~PUSH_BYTE~, ~POP_WORD~, etc. Some /opcodes/ may have more /type specifiers/ than others. -* Bytecode format +* TODO Bytecode format Bytecode files are byte sequence which encode instructions for the virtual machine. Any instruction (even with an operand) has one and only one byte sequence associated with it. |