Two features about this assembly code are worth

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: single-precision (4-byte) values, corresponding to C data type float; double-precision (8-byte) values, corresponding to C data type double; and extended-precision (10-byte) values. G CC uses the data type long double to refer to extended-precision floating-point values. It also stores them as 12byte quantities to improve memory system performance, as will be discussed later. Although the ANSI C standard includes long double as a data type, they are implemented for most combinations of compiler and machine using the same 8-byte format as ordinary double. The support for extended precision is 3.4. ACCESSING INFORMATION 31 %eax %ecx %edx %ebx %esi %edi %esp %ebp %ax %cx %dx %ax %si %di %sp %bp Stack Pointer Frame Pointer 15 %ah %ch %dh %bh 87 %al %cl %dl %bl 0 99 Figure 3.2: Integer Registers. All eight registers can be accessed as either 16 bits (word) or 32 bits (double word). The two low-order bytes of the first four registers can be accessed independently. unique to the combination of GCC and IA32. As the table indicates, every operation in GAS has...
View Full Document

Ask a homework question - tutors are online