starting work on assembler

This commit is contained in:
SpookyDervish
2025-12-21 09:44:16 +11:00
parent b1ff26bcbb
commit e92f097afe
16 changed files with 315 additions and 29 deletions

View File

@@ -5,24 +5,20 @@
#define ARRAY_SIZE(array) (sizeof(array) / sizeof(array[0]));
VMBL_Instruction program[] = {
MAKE_INST_PUSH(124),
MAKE_INST_PUSH(2),
MAKE_INST_DIV,
MAKE_INST_HALT
MAKE_INST_PUSH(0),
MAKE_INST_PUSH(1),
MAKE_INST_DUP(1),
MAKE_INST_DUP(1),
MAKE_INST_ADD,
MAKE_INST_JMP(2)
};
int main() {
//VMBL_State vmblState = {};
//VMBL_LoadExecutable(&vmblState, program, sizeof(program));
//VMBL_StartVM(&vmblState);
Tokenizer tokenizer = {
"push 1224\npush 2\ndiv\nhalt"
};
Token token = getCurrentToken(&tokenizer);
printf("%s\n", tokenTypeAsCStr(token.type));
VMBL_State vmblState = {};
VMBL_LoadExecutable(&vmblState, program, sizeof(program));
//VMBL_SaveExecutable("fib.vmbl", program, sizeof(program));
VMBL_StartVM(&vmblState);
return 0;
}