Homoiconic and “unrestricted” self modifying code + Is lisp really self modifying?

In the first version (+ 1 2 3) is raw code, whereas in the second version it is data. By assuming the truth of this statement it can be argued that Lisp isn’t even homiconic. The code has the same representation as data in the sense that they are both lists/trees/S-expressions. But the fact that … Read more

What’s the relationship between assembly language and machine language?

Assembly language is a convenience mechanism over the machine language. With assembly language you use mnemonic sequences instead of numeric operation codes and can use symbolic labels instead of manually calculating offsets. It also protects you from really dumb errors – like typing a malformed processor instruction. Otherwise the assembly language is the equivalent of … Read more

How to read the Intel Opcode notation

3.1.1.1 Opcode Column in the Instruction Summary Table (Instructions without VEX Prefix) The “Opcode” column in the table above shows the object code produced for each form of the instruction. When possible, codes are given as hexadecimal bytes in the same order in which they appear in memory. Definitions of entries other than hexadecimal bytes … Read more

How to Calculate Jump Target Address and Branch Target Address?

(In the diagrams and text below, PC is the address of the branch instruction itself. PC+4 is the end of the branch instruction itself, and the start of the branch delay slot. Except in the absolute jump diagram.) 1. Branch Address Calculation In MIPS branch instruction has only 16 bits offset to determine next instruction. … Read more

How to write and executable Windows .exe manually (machine code with Hex editor)?

There’s a quite minimalistic but fully working (on Win7, too) exe on corkami/wiki/PE101, every byte of it is explained in the nice graphic. You can type it all by hand in a hex editor, but the paddings may make that a little tedious. As for the history, yes someone at Microsoft invented the exe format … Read more

How to write and execute PURE machine code manually without containers like EXE or ELF?

You can write in PURE machine code manually WITHOUT ASSEMBLY Linux/ELF: https://github.com/XlogicX/m2elf. This is still a work in progress, I just started working on this yesterday. Source file for “Hello World” would look like this: b8 21 0a 00 00 #moving “!\n” into eax a3 0c 10 00 06 #moving eax into first memory location … Read more

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)