Is there some documentation that shows what all the different operations and stuff represent in hex or binary
like mov = 10011101 or w.e it is
its for 80386 architecure btw.
thanks in advance.
Is there some documentation that shows what all the different operations and stuff represent in hex or binary
like mov = 10011101 or w.e it is
its for 80386 architecure btw.
thanks in advance.
Google "8086 processor reference manual"
I did that and the documentation just tells me how to program like how to use mov and add and all that and registers but I am looking to write my own little assembler and need to know the machine code versions so it can be translated to byte code. maybe u know a better thing i should be looking for or sometin. thanks in advance.
Keep looking, some of them tell you how opcodes are encoded at the bit level.
shit this is the hardest thing to find ever Ive now spent around 3 hours of just straight searching for this I just want to know all the operations and everything in hex or binary. You would think this would be pretty easy to find. Should i be looking on intels website or something?
http://developer.intel.com/design/pentium/manuals/24319101.pdf
is that the documentation i should be looking at particularly at the opcode map which is very confusing lol. Also can u program 8 bit on a 32 bit cpu.
Yeah, pretty much all of that.
ok i actually understand the opcode map now and i am able to get hex code out of it which is great but what i dont understand is if a memory adress represents a byte inside your ram than how can it store a 4byte value (32 bit) at one adresss?
It uses 4 consecutive addresses.
All the addresses you specify are the start address, then the length modifier tells the processor whether to fetch 1, 2, or 4 bytes.
ok makes sense but i found another problem, when i open my binary files up in a hex editor from a line where i specify a memory address it always has 2 hex values for it. like 00 00 for the memroy address 0 why doesnt it just put 00 that seems like a waste of space
so if i make a dword at memory adress 0 that means that 0,1,2,3 adresses are now taken and if i write data to any of biaccidently them I am overwriting other data that I previously stored? I am assuming that good programming languages take care of this so you dont overwrite your data?
> them I am overwriting other data that I previously stored?
Yes.
> I am assuming that good programming languages take care of this so you dont overwrite your data?
Also correct.
if I am writing my own operating system how Do i no which memory address my bootloader is being loaded into initially when it is read off of the floppy disk. Is the initial bootloader loaded to memory address 0 or something?
ok thanks, i am a little confused as to how input and output works on a computer with interrupts could u explain it a bit if u dont mind or point me in the right direction. Gimme a little explanation for an example like if I pressed the a key on my keyboard what happens and if I wanted to draw to the pixel 0,0 and colour it red or something.
i just realized this, why dont they make it so you can fetch 24 bits ot 3 bytes and make the cpu register able to store and manipulate them too. Wouldnt it be more sufficient having the power to utilize 1,2,3, or 4 bytes.
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.