Page 1 of 1
OSDev Series: IA32 machine language
Posted: Mon Dec 19, 2011 1:37 pm
by neon
Hello everyone,
This is the initial release for the OSDev Series advanced chapter covering IA32 and IA64 machine language. It provides an introduction to machine language topics, instruction encoding, using instruction look-up tables, and some examples of translating instructions. I feel that this might be a good supplemental material to the OSDev Wikis' article as it presents the information in a different way.
We are transitioning to a different writing environment for the series to present a standard formatting method and resolve spelling errors that are present in earlier chapters. Please let me know if there are any formatting oddities.
OSDev Series: IA32 Machine Language
Please let me know if there are any questions or comments.
Thanks,
~Mike ();
*edit: fixed invalid link
Re: OSDev Series: IA32 machine language
Posted: Mon Dec 19, 2011 1:59 pm
by stlw
neon wrote:Hello everyone,
We are transitioning to a different writing environment for the series to present a standard formatting method and resolve spelling errors that are present in earlier chapters. Please let me know if there are any formatting oddities.
OSDev Series: IA32 Machine Language
Please let me know if there are any questions or comments.
Thanks,
~Mike ();
I have error 404 on that link
Re: OSDev Series: IA32 machine language
Posted: Mon Dec 19, 2011 3:11 pm
by CrypticalCode0
Neon it's a great guide a little to basic for me personally but it does serve it's purpose.
Re: OSDev Series: IA32 machine language
Posted: Mon Dec 19, 2011 7:10 pm
by Jezze
Nice work!
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 3:41 am
by ACcurrent
Beauty just what I was looking for. Now I can write my own 16bit real mode emulator! ITs probably gonna be the first stop for everybody who wants to write an assembler too!
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 5:10 am
by AJ
Hi,
You've got some nicely done tutorials on there and don't always stick to the stuff that's been done loads of times before! Nice work.
Cheers,
Adam
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 5:20 am
by Combuster
Nice work.
Some things did strike me as odd though:
Machine language, also known as (...) byte code
Bytecode is generally a term used for
non-native binary storage of program code, and is rather out of place as an equivalent term for native code.
IA64
That is the formal designation for Itanium. You might want to replace that with x86-64.
The LOCK prefix can only be used (...)
When the destination is a memory operand and is part of a read-modify-write operation. (in practice, the source being the memory operand is allowed but is normally useless). FOOF bug being a typical example of that.
rex.w
Warning: "rex" used but not defined
. You might want to give a brief introduction to the difference between legacy and long mode before using it that way.
The prefix bytes are identified in 4 classes
repeat(1) segment(2) address(3) operand(4) REX...5?
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 8:26 am
by neon
Hello everyone,
I appreciate the feedback.
@Combuster: Thanks for the suggestions
I am not sure what the last point is addressing however. REX isn't a separate prefix class so we treat it that way.
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 8:58 am
by Love4Boobies
stlw wrote:I have error 404 on that link
Same here. It should end in html, not htm.
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 9:45 am
by Combuster
neon wrote:REX isn't a separate prefix class so we treat it that way.
That just wasn't actually self-contradicting so we treat the article that way...
(Obfuscations aside, either treat REX as a separate entity throughout or as yet another prefix throughout, but do not mix both)
Same here. It should end in html, not htm.
Didn't know you take more than six hours for a post
Re: OSDev Series: IA32 machine language
Posted: Tue Dec 20, 2011 10:31 am
by Love4Boobies
Combuster wrote:Same here. It should end in html, not htm.
Didn't know you take more than six hours for a post
Um, apparently I clicked on the link in stlw's quote.