Index_A


A

ABI (application binary interface), 184
absolute coordinate pointing devices, 396
abstract concept of number, 10
abstraction, numeric, 10
accelerated graphics port (AGP), 341, 386
access
16-bit bus data, 140
aligned data, 166
in byte-addressable memory, word, 138
CPU memory, 157
direct memory, 334
FORTRAN array, 178
latency (of a cache), 301
Linux port, 345
low-level disk, 375
memory, and the system clock, 151
output port that supports read/write, 331
RISC CPU memory, 144, 157
three-dimensional column-major array, 178
Windows port, 345
accesses on non-80 —86 processors, 143
accessing
array elements, 159
data with 16-bit bus, 140
double words in memory, 142
elements of an array, 173
elements of multidimensional arrays, 177, 179
pointer variables , 159
a word in byte-addressable memory, 138
a word on a 32-bit processor, 143
words at arbitrary memory addresses, 140
words at odd addresses, 141
accumulation of error in a floating-point computation, 68
acknowledge line, 350
activation records, 320
active
high logic, 217
low logic, 217
ADA programming language, 5
adapter, SCSI host, 370
add
instruction, 230, 232
instruction (Y86), 269, 274
add opcode, 80 —86, 281
adders, half and full, 215
adding
four 256-MB memory modules to a system, 217
an integer to a pointer, 165
integer values to a pointer, 166
addition
with pointers, integer, 165
rules for binary, 40
addition and subtraction, floating-point, 81
addition circuits, 214
addition or subtraction with a scaled format, 36
address
accessing words at odd, 141
bus, I/O, 134-38
effective, 159
physical, 309
record base, 183
space, I/O, 137, 312, 335
translating virtual to physical, 310
virtual, 309
words stored at odd, 141
addressable memory, 135
double word storage in byte, 138
maximum, 135
storing words in byte, 138
word access in byte, 138
addressing
capabilities, 80 —86, 136
mode
direct, 271
direct memory, 158
indexed, 166
indexed versus scaled, 160
indirect, 158, 271
reg values, 285
scaled indexed, 160, 284-87
short displacements for indexed, 159
words and dwords in memory, 138
addressing mode (Y86), 270
direct, 270-71
indexed, 270-71
indirect, 270-71
advanced technology attachment (ATA), 373
aggregate data types, 169
AGP (accelerated graphics port), 314, 341
AIF files, 401
algebra
computers and, 212
theorems of Boolean, 192-93
algebraic manipulation of Boolean expressions, 198
algorithm, hardware implementation of, 212
aliases, 188
aligned data access, 166
aligning fields of a record, 184
allocating objects in contiguous memory, 166
allocation
best-fit memory, 323
dynamic memory, 164, 321
first-fit memory, 323
granularity of memory, 326
heap section, 321
memory, 164, 321
operating system and memory, 325
operator, 321
pointers and dynamic memory, 164
tables, file, 378
alphabetic characters
comparing, 126
grouping, 124
lowercase, 105
alternate
byte layout in a double word, 144
encodings for instructions, 292
ALU (arithmetic logical unit), 239
AMD —86-64 processors, 135
anonymous variables, 164, 321
APIs, device-control, 347
application binary interface (ABI), 184
applications, 3D gaming, 33
approximation of real numbers , 66
Arabic number system, 11
arbitrary addresses in memory, 140
arbitrated loop, SCSI, 369
architecture, 134
computer, 134
CPU, 225
Harvard, 248
ISA (industry standard), 338
ISA (instruction set), 259-60
VLIW, 255
von Neumann, 134
arithmetic
binary and hexadecimal, 39
financial transactions and fixed-point, 35
floating-point, 33, 65, 66
exceptions in, 79
IEEE rounding, 84
limitations of, 65
hexadecimal, 39
limited-precision, 67
and logical instructions (Y86), 266, 269
logical units, 239
pointer, 164
shift right operation, 53
array, 169
access, 159
column-major, 178
FORTRAN, 178
accessing elements of, 173
multidimensional, 177, 179
adding padding bytes before, 172
alignment in memory, 172
base address, 169
bounds checking, 171
column-major ordering, 175, 178
data, 173
declarations, 169
C/C++, 170
HLA, 170
multidimensional, 179
element, 169
accessing, 159
ordering, row-major, 175
organization, 169
index, 169, 171
bounds checking, 171
operator, 169
initializers, 170
layout in memory, 169
memory consumption, 172
multidimensional, 174-80
one-dimensional, 173
organization, 169
packed data, 173
padding bytes in, 172
Pascal declarations, 171, 179
representation in memory, 172
row-major ordering, 175
storage, 173
two-dimensional, 176
array in memory
declaring, 169
representing, 172
ASCII character set, 104
codes, 104-5
numeric digits, 105-6
punctuation symbols, 105
uppercase characters, 105
assembler directive, struct, 182
assembly language bitwise instructions, 80 —86, 48
associative Boolean operations, 193
associative cache
four-way set, 304
fully, 304
n-way set, 304
one-way set, 303
two-way set, 304-5
associative operators
left, 194
right, 194
associativity, 192
asynchronous I/O, 387
AT attachment with packet interface, 373
ATA (advanced technology attachment), 373
ATAPI, 373
audio
CD-quality, 401
devices, programming, 403
file formats, 401
input under USB, 395
output under USB, 395
recorders , digital, 401
sampling, 401
storage requirements on disk, 401
automatic variables, 170
autorepeat (keyboard), 348
AX (Y86 register), 275



Write Great Code. Understanding the Machine, Vol. 1
The Art of Assembly Language
ISBN: 1593270038
EAN: 2147483647
Year: 2003
Pages: 144
Authors: Randall Hyde

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net