The intel x86 microprocessor is a register machine that uses a CISC( Complex Instruction Set computer) instruction set. Which basically means the intel x86 chip in the xbox stores and executes complex instructions which perform multiple tasks such as arithmetic operations sequentially(www.siyobik.info, 2009).
Example machine code:
mov eax, 1
mov ebx, 10
xor ecx, ecx
our_loop:
add ecx, eax
inc eax
comp eax, ebx
jile our_loop
Most of theselines represent an instruction that gets executed by the processor.
The code in C++:
int calculate_sum(int limit)
{
int sum = 0;
for(int i = 1; i <= limit; i++)
{
sum += i;
return sum;
}
}
The instruction pointer (this is what contains the address of the current instruction being executed) is stored in a 32bit register(www.siyobik.info, 2009).
More info on the x86 chip at: LINK
One homebrew disassembler for the x86 chip is known as OllyDbg developed by Oleh Yushun. Its a 32bit assembler level analysing debugger for mcrosoft windows which emphasises on binary code analysis. More info and free download available at: LINK
Wednesday, 14 October 2009
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment