Knowledge

Byte addressing

Source 📝

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

Index


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
indirect addressing modes

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