Index_C


C

C programming language
bit fields, 58
packed bit strings in, 58
union on endian machines, 148
C++, delete memory deallocation operator, 321
C/C++ programming languages, 5
double data type, 72
float data type, 72
records in, 182
sizeof function, 164
unions in, 186
C/C++/Java operators
bitwise, 48
shift left, 52
cache
access latency, 301
architecture, 302
associativity, 304
coherency, 257
control bit, 335
direct-mapped, 303
dirty bits, 308
disk controllers, 356
four-way set associative, 304
fully associative, 304
hits, 154-55
instruction, 247
I/O operations, 335
levels, 296
three, 157
line, 155, 301-3
line replacement
latency, 308
policies, 306
memory, 153
interface to system, 154
miss , 154
n-way set associative, 304
one-way set associative, 303
replacement policy for, 306
least recently used (LRU), 306
random, 307
secondary, 156
subsystems, L2, 300
thrashing, 308
two-level , 156
two-way set associative, 304-5
usage optimization, 305
write policy
write-back, 307
write-through, 307
caching
file block, 375
scheme, 305
system, two-level, 156
calculations
accuracy of BCD, 32
floating point
error accumulation, 68
rounding after, 67
canonical
byte gender formats, 146
forms, 199
of Boolean expressions, 198
converting between, 203
maxterms, 203
minterms, 200-2
truth tables from, 200
capacity
hard disk drive, 352
memory, 152
cards
CompactFlash, 364
flash memory, PC, 364
sound, 399
carriage return character, 104
carry, 40
case characters , 105
case variant records, 186
casting types, 28
CD track seek times, 362
CD-recordable (CD-R) format, 361
CD-ROM, CD-R, and CD-R/W drives , 360
CD-quality audio, 401
ceil function, 77
cells , memory, 220
central processing unit (CPU), 134
Channel Arbitrated Loop, Fibre, 369
character codes for numeric digits, 124
character data, 104
character groupings, 128
character set, 119
ASCII, 104
numeric digits, 105
punctuation symbols, 105
uppercase characters, 105
designing, 121
double-byte (DBCSS), 108
EBCDIC, 107
HyCode, 122, 129
membership in, 119
representation
HLA, 120
list, 120
powersets, 120
Unicode, 109
characters
ASCII character set, 104
backspace , 105
carriage return, 104
comparing alphabetic, 126
control characters, 104
control codes, 106
descriptor-based strings, 115
differentiating upper- and lowercase, 105
end-of-line, 106
grouping alphabetic, 124
HLA string format, 113
length-prefixed strings, 112
line feed, 105
lowercase alphabetic, 105
maximum length for strings, 111
NUL, 112
numeric digits, 105, 106
reference count for strings, 111
representation, 103
string formats, 110-15
Unicode, 109
uppercase, 105
zero- terminated strings, 111
charts
binary/hexadecimal conversion, 17
binary/octal conversion, 19
chip
8042 microcontroller, 349
8250 serial communications, 351
serial communications, 351
circuit
addition, 214
combinatorial, 214
decoder, 216
instability, 221
CISC (Complex Instruction Set Computer), 230
and data hazard , 250
clipping (saturation), 30
clock
cycle, 150
falling edge of a, 150
frequency, 150
lines, 136
memory access, 151
operation, 150
period, 150
rising edge of a, 150
system, 149, 150
clocked logic, 220
clocks per instruction (CPI), 251
closure, 192
for Boolean operators, 193
of an operator, 192
cmp instruction (Y86), 269, 276
coarse-grained parallelism, 257
code
characteristics of great, 6
data caches, 249
down key, 348
Extended Binary Coded Decimal Interchange (EBCDIC), 107
keyboard, 348
machine, 274
morphing, 255
pages, 107
scan, 348
sections in a program, 319
coercion (real to integer), type, 81
column-major
array element ordering, 178
ordering, 178
column-major array access, 175, 178
COM ports, 351
combinatorial circuits, 214
command set, SCSI, 370
communications
with device drivers, 347
devices under USB, 396
RS-232 serial, 351
unidirectional parallel, 349
communications chips, serial, 351
commutativity, 192-93
CompactFlash cards, 364
comparing
alphabetic characters, 126
bits, 49
dates, 58
floating-point numbers , 69-71
pointers, 164, 168
comparison instructions, 266
complement sign bit, 24
Complex Instruction Set Computer (CISC), 230, 280
components , 134
composite data types, 169
composition of a word, 22
computer architecture, 134
computers
Boolean algebra and, 212
reel-to-reel tape drives, 363
stored program, 227
concept of a number, abstract, 10
condition codes register, 232
conditional jumps , 277
instructions, 230, 266
Y86, 274
connecting
PCI and ISA buses, 339
ports, 333
connections
master-slave , 391
peer-to-peer, 391
constant sections in a program, 319
constants, binary literal, 15
constructing large objects from bytes in memory, 147
contention (for the bus), 246
contiguous memory, 166
contraction (sign), 29
control
bit, 335
bus, 134, 136
characters, 104
line, 136, 141, 330-333
transfer instructions (Y86), 269
transmission, USB, 393
units (CU), 239
controller stack
host, 391
USB host, 391
controllers
joysticks and game, 397
SCSI, 367
conversion
between canonical forms, 203
between decimal and binary, 14
between hexadecimal and binary, 17
between little and big endian forms, 146
between octal and binary, 18
decimal digits to an integer, 20
in a double word, endian, 146
integer to a string of characters, 20
string to numeric, 19
conversion chart
binary/hexadecimal, 17
binary/octal, 19
copy storage in memory hierarchy, 298
cost of CPU design, 260
counters
electronic implementation, 223
modulo-n, 51
CPI (clocks per instruction), 251
CPU (central processing unit), 134
ALU (arithmetic logical unit), 239
architecture, 225
arithmetic logical unit (ALU), 239
bus interface unit (BIU), 240
cache lines, 302
replacement policies, 306
complexity, 261
control units (CU), 239
CPI (clocks per instruction), 251
data hazards, 246, 250
definition, 225
design, 225
cost, 260
expandability, 261
prefetch queue, 241
random logic, 228
direct-mapped cache, 303
execution units, 229, 252
expandability, 261
flushing a pipeline, 247
four-way set associative
caches, 304
functional units, 239
grouping instructions, 267
Harvard architecture, 248
improving performance, 252
instruction
cache, 247
opcode format, 218
sets, 226, 259
size , 228
usage frequency, 267
instructions, 266
decoding, 228
encoding, 262
executing, 228, 229
legacy support, 261
local bus for, 338
memory access, RISC, 144, 157
microcode , 228
microinstructions, 228
n-way set associative caches, 304
opcodes, 228, 262
out-of-order execution, 253
overlapping instruction execution, 241
pipelining, 243
stages, 244
stalls, 246
prefetch queue, 238-43
random logic design in, 228
register renaming, 253
scaled indexed addressing mode, 284
two-way set associative caches, 304
variable-length instructions, 264
superscalar, 251
Crusoe processor, 255
CU (control units), 239
CX (Y86 register), 275
cycle
memory, 151
unused bus, 240
cylinder, hard disk, 355



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