Knowledge

Byte addressing

Source 📝

189:
much less useful for scientific and engineering users. Or consider 32-bit x86 processors. Their 32-bit linear addresses can address 4 billion different items. Using word addressing, a 32-bit processor could address 4 Gigawords; or 16 Gigabytes using the modern 8-bit byte. If the 386 and its successors had used word addressing, scientists, engineers, and gamers could all have run programs that were 4x larger on 32-bit machines. However, word processing, rendering HTML, and all other text applications would have run more slowly.
36: 184:
addresses eight bits, but as this is the full width of the accumulator and other registers, this could be considered either byte-addressable or word-addressable. 32-bit x86 processors, which address memory in 8-bit units but have 32-bit general-purpose registers and can operate on 32-bit items with a
188:
The advantage of word addressing is that more memory can be addressed in the same number of bits. The IBM 7094 has 15-bit addresses, so could address 32,768 words of 36 bits. The machines were often built with a full complement of addressable memory. Addressing 32,768 bytes of 6 bits would have been
208:
in the new one, and then store back the amended word. At least six machine instructions. Usually, these are relegated to a subroutine, so every store or fetch of a single character involves the overhead of calling a subroutine and returning. With byte addressing, that can be achieved in one
200:, which is word-addressable and has no concept of a byte. It has 36-bit words and stores its six-bit character codes six to a word. To change the 16th character in a string, the program has to determine that this is the fourth character of the third word in the string, fetch the third word, 260:
instructions incremented the byte pointer and then loaded or stored the next byte. These instructions could operate on arbitrary-width bit fields. Programs took advantage of this flexibility: those not needing lowercase letters used the limited character set of
179:
and can handle 32-bit (4-byte) data in single instructions. However, data in memory may be of various lengths. Instruction sets that support byte addressing supports accessing data in units that are narrower than the word length. An eight-bit processor like the
192:
When computers were so costly that they were only or mainly used for science and engineering, word addressing was the obvious mode. As it became cost-effective to use computers for handling text, hardware designers moved to byte addressing.
287:
bytes before or after the byte to which it currently pointed required a sequence of multiple instructions. The KL10 PDP-10 model extended the
333: 171:, storing a single 0 or 1. Many common instruction set architectures can address more than 8 bits of data at a time. For example, 32-bit 119: 209:
instruction: store this character code at that byte address. Text programs are easier to write, they are smaller, and run faster.
429: 53: 283:
Neither of these machines originally had direct machine support for random access to bytes; adjusting a byte pointer to point
100: 424: 57: 280:
could be used on most instruction types, and operated on a byte pointer which could operate on either 6-bit or 9-bit bytes.
72: 381: 79: 395: 176: 86: 304: 270: 68: 46: 262: 230: 329: 93: 404: 201: 156: 145: 277: 218: 372: 358:(in German). Vol. I (5 ed.). Stuttgart, Germany: Gustav Fischer. p. 125. 273:
implementation used 9-bit bytes because C requires all memory to be byte-addressable.
418: 226: 151: 266: 35: 17: 204:
out the old value of the fourth character from the value held in the register,
309: 205: 181: 197: 222: 295:, that could adjust a byte pointer by an arbitrary number of bytes. 240:
which included a word address, a bit offset, and a bit width. The
233:
series, have special mechanisms for accessing bytes efficiently.
136: 172: 168: 29: 291:
instruction to become the "adjust byte pointer" instruction,
196:
To illustrate why byte addressing is useful, consider the
367: 365: 135:
in hardware architectures supports accessing individual
139:. Computers with byte addressing are sometimes called 374:
DECsystem-10/DECSYSTEM-20 Processor Reference Manual
236:
On the PDP-6/10, special instructions operated on a
60:. Unsourced material may be challenged and removed. 269:, packed 5 to a word with one unused bit; and the 252:instruction incremented the byte pointer, and the 8: 248:instructions loaded or stored one byte, the 27:Computer architecture with addressable bytes 185:single instruction, are byte-addressable. 120:Learn how and when to remove this message 397:GE-625/635 Programming Reference Manual 321: 167:The basic unit of digital storage is a 276:On the GE/Honeywell machines, special 7: 58:adding citations to reliable sources 407:. July 1969. pp. 169, 171–172. 25: 34: 336:from the original on 2017-04-09 45:needs additional citations for 1: 382:Digital Equipment Corporation 446: 265:for efficiency; most used 384:. June 1982. AD-H391A-T1. 278:indirect addressing modes 177:general-purpose registers 305:Data structure alignment 430:Central processing unit 175:processors have 32-bit 155:, that access data by 354:Hansen, H. R. (1986). 425:Computer architecture 356:Wirtschaftsinformatik 54:improve this article 217:Some systems with 143:, in contrast to 130: 129: 122: 104: 69:"Byte addressing" 16:(Redirected from 437: 409: 408: 405:General Electric 402: 392: 386: 385: 379: 369: 360: 359: 351: 345: 344: 342: 341: 326: 294: 290: 259: 255: 251: 247: 243: 146:word-addressable 125: 118: 114: 111: 105: 103: 62: 38: 30: 21: 18:Byte-addressable 445: 444: 440: 439: 438: 436: 435: 434: 415: 414: 413: 412: 400: 394: 393: 389: 377: 371: 370: 363: 353: 352: 348: 339: 337: 328: 327: 323: 318: 301: 292: 288: 257: 253: 249: 245: 241: 219:word addressing 215: 165: 149:architectures, 133:Byte addressing 126: 115: 109: 106: 63: 61: 51: 39: 28: 23: 22: 15: 12: 11: 5: 443: 441: 433: 432: 427: 417: 416: 411: 410: 387: 361: 346: 330:"Wortmaschine" 320: 319: 317: 314: 313: 312: 307: 300: 297: 231:Honeywell 6000 221:, such as the 214: 213:Hybrid systems 211: 164: 161: 128: 127: 42: 40: 33: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 442: 431: 428: 426: 423: 422: 420: 406: 399: 398: 391: 388: 383: 376: 375: 368: 366: 362: 357: 350: 347: 335: 332:(in German). 331: 325: 322: 315: 311: 308: 306: 303: 302: 298: 296: 286: 281: 279: 274: 272: 268: 264: 239: 234: 232: 228: 224: 220: 212: 210: 207: 203: 199: 194: 190: 186: 183: 178: 174: 170: 162: 160: 158: 154: 153: 152:word machines 148: 147: 142: 141:byte machines 138: 134: 124: 121: 113: 102: 99: 95: 92: 88: 85: 81: 78: 74: 71: –  70: 66: 65:Find sources: 59: 55: 49: 48: 43:This article 41: 37: 32: 31: 19: 396: 390: 373: 355: 349: 338:. Retrieved 324: 284: 282: 275: 238:byte pointer 237: 235: 216: 195: 191: 187: 166: 150: 144: 140: 132: 131: 116: 107: 97: 90: 83: 76: 64: 52:Please help 47:verification 44: 267:7-bit ASCII 263:6-bit bytes 419:Categories 340:2017-04-09 316:References 310:Endianness 206:bitwise or 182:Intel 8008 163:Background 110:April 2017 80:newspapers 334:Archived 299:See also 225:and the 223:PDP-6/10 198:IBM 7094 94:scholar 227:GE-600 96:  89:  82:  75:  67:  401:(PDF) 378:(PDF) 293:ADJBP 137:bytes 101:JSTOR 87:books 258:IDPB 254:ILDB 202:mask 157:word 73:news 289:IBP 250:IBP 246:DPB 242:LDB 173:x86 169:bit 56:by 421:: 403:. 380:. 364:^ 159:. 343:. 285:N 271:C 256:/ 244:/ 229:/ 123:) 117:( 112:) 108:( 98:· 91:· 84:· 77:· 50:. 20:)

Index

Byte-addressable

verification
improve this article
adding citations to reliable sources
"Byte addressing"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
bytes
word-addressable
word machines
word
bit
x86
general-purpose registers
Intel 8008
IBM 7094
mask
bitwise or
word addressing
PDP-6/10
GE-600
Honeywell 6000
6-bit bytes
7-bit ASCII
C

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.