80 votes
Accepted

Why is the Nintendo Entertainment System (NES) referred to as an 8-bit system, rather than a 1-byte system?

"Back in the day" computers were defined more by their word size, for example the PDP-8 had 12-bit words composed of two 6-bit "bytes". A "nibble" was half a byte, or 3 bits in this case (and here the ...
C8H10N4O2's user avatar
  • 746
44 votes

Why is the Nintendo Entertainment System (NES) referred to as an 8-bit system, rather than a 1-byte system?

A) Historically, machines have been characterized by number of bits per 'machine word'. Why should NES be handled differently? B) Calling it a 'byte' is not as clear since historically a 'byte' has ...
PMar's user avatar
  • 311
25 votes

Is a computer without RAM, but with a disk, equivalent to one with RAM?

Sure. In principle, given appropriate hardware, you could have just a disk, with everything stored on disk. Any time the CPU did a load or store instruction, there could be some hardware that turns ...
D.W.'s user avatar
  • 156k
16 votes

Is a computer without RAM, but with a disk, equivalent to one with RAM?

In terms of computability, it is known that every modern day computer can be simulated by a Turing Machine whose only storage is a single, linear tape cells that can be written. Assuming you can keep ...
jmite's user avatar
  • 29.7k
14 votes

Is a computer without RAM, but with a disk, equivalent to one with RAM?

The question is not purely academic. It is a matter of historical record that one of the earliest commercially-produced computers [sorry, I don't recall which offhand] did not have any RAM - all ...
PMar's user avatar
  • 141
7 votes
Accepted

Why is word-addressable the exception, not the rule?

Byte operations will always be important because a lot of a modern workload involves bytes. Text processing and bytecode interpretation (including emulation of other CPUs) are obvious examples, but ...
Pseudonym's user avatar
  • 21.6k
7 votes

Is a computer without RAM, but with a disk, equivalent to one with RAM?

No. Disk drives are not Random Addressable like RAM. Instead they're block storage devices. You can't read or write a byte from them. And your CPU cannot read a whole sector at once, they need that ...
MSalters's user avatar
  • 865
6 votes

Where is the reorder buffer (ROB)?

Somewhere which is not part of the user accessible memory (i.e. not in the main memory nor in the cache -- that would be too slow, one of the main use of OOO is to hide part of the latency of main ...
AProgrammer's user avatar
  • 3,024
6 votes

Relationship between RAM size and 32-bit vs 64-bit word size

x86 is a 32-bit processor. Memory addresses for x86 are 32 bits. Each byte has a different address, so a 32-bit address means that you can only address up to $2^{32}$ bytes of memory. $2^{32}$ ...
D.W.'s user avatar
  • 156k
6 votes
Accepted

Computer cache - data removing

Cache lines are evicted : When the OS requests it, it may occur for example in non cache-coherent systems when a peripheral does a DMA transfer (direct transfer from a peripheral to main memory), or ...
TEMLIB's user avatar
  • 1,851
6 votes
Accepted

Why RAID 2 would ever be used instead of RAID 3?

RAID 2 doesn't use parity: it uses a Hamming code. This allows error correction as well as error detection. Remember that a parity bit is just a bit that tells you whether the sum of the other bits is ...
David Richerby's user avatar
6 votes
Accepted

Representation of used space and free space in hard drives

Free space is a concept at the level of the filesystem, which is part of the operating system. It is up to the filesystem to determine what space is free, and how to exploit it. Data is stored on the ...
Yuval Filmus's user avatar
6 votes
Accepted

How does software prefetching work with in order processors?

"In-order" processors only issue instructions in order. Completion is out-of-order even on most processors that are called "in-order". "in-order" just means: if the ...
Wandering Logic's user avatar
5 votes

/How/ is the machine code within the CPU physically implemented; /why/ precisely does this work; and /where/ is it stored?

This is a very broad question which would be far easier to answer in person with a whiteboard than in a short online missive. I found this document for the design of a simple computer from Purdue (...
Brian Hibbert's user avatar
5 votes
Accepted

Variable size and CPU performance

Would it make any difference performance-wise to only use the largest variable size on the platform and use business logic to enforce reasonableness in the values being processed and stored? Yes, it ...
manlio's user avatar
  • 2,007
5 votes
Accepted

Why do we still use a Von Neumann Architecture in modern computers?

So why do we still use this architecture in the majority of modern computing? The assumption itself, first clause: Modern Computer <= Von Neumann Firstly, do note that the Von Neumann ...
Tobia Tesan's user avatar
5 votes

Why is 2^32 in a 32-bit system = 4GiB and not 4Gib?

"32-bit" describes the size of many of the units of data that the processor can use. In this context, it refers to the size of memory addresses. A 32-bit address can address $2^{32}$ distinct objects; ...
Curtis F's user avatar
  • 1,003
4 votes

/How/ is the machine code within the CPU physically implemented; /why/ precisely does this work; and /where/ is it stored?

At a very basic level, the CPU implements a Boolean circuit with memory. That is, the basic building blocks of a CPU are logic gates (in practice, NAND gates) and flip flops (memory units). These are ...
Yuval Filmus's user avatar
4 votes

Why is data fragmentation not possible on main memory (RAM)?

According to https://lwn.net/Articles/211505/, what you imagine should be done by the OS, is already done: Since Linux is a virtual memory system, fragmentation normally is not a problem; ...
Toni's user avatar
  • 41
4 votes

Who converts binary/machine code to electrical signals and how?

The question is asking there must be something between the machine code and the electric signal in the computer. For example, a program written in C++ is compiled into machine code first, then it is ...
MartinLA2020's user avatar
4 votes

Who converts binary/machine code to electrical signals and how?

The CPU What is important to understand is that the CPU comes with a predefined instruction set that it can handle. For example, x86-64 CPUs have a defined set of instructions that they can operate on....
user123's user avatar
  • 1,092
4 votes

What's the difference between Memory Byte (Mb) and Mega Byte (mb)

Ok - there's a lot of muddle here! "Memory Byte" isn't a term at all. Nor is "mb" - that would mean "milli-bit", which isn't really a thing! MB means Megabyte - which means either 1,000,000 bytes, ...
SusanW's user avatar
  • 143
4 votes

Representation of used space and free space in hard drives

The operating system knows what parts of memory are free and what parts are in use by keeping track of all allocations to processes; anything that isn't allocated is free. Disks are exactly the same: ...
David Richerby's user avatar
4 votes

Is CPU Registers part of Primary Memory?

CPU registers are often counted as part of primary memory (since they are directly accessed by the CPU - see Wikipedia) and are often volatile, so it seems likely that the expected answer is (1). ...
gandalf61's user avatar
  • 1,579
4 votes

How does a dual core microprocessors run so many programs?

It's great that you're curious. A simplified explanation follows with a few links to delve into: All of the programs running in parallel is actually an illusion that is created by the OS. Even if we ...
ss09's user avatar
  • 96
4 votes
Accepted

How LRU is used without special hardware?

The Linux kernel uses a (very rough) approximation of LRU, which is the reason why you find mention of LRU, even though it is not the true LRU algorithm. Here is a description taken from the source: ...
Vincenzo's user avatar
  • 3,252
3 votes

How does hardware interrupt work on a physical layer

The CPU has specific pins on the outside to detect hardware interrupts. Take for instance the 6502 used in the Apple II and c64 it has two interrupt pins: IRQ on pin 4 and (can be ignored) NMI on ...
Johan's user avatar
  • 1,040
3 votes
Accepted

What is a swap-with-memory instruction?

A swap-with-memory instruction swaps a register's value with that of a memory location. An example of such an instruction would be the Intel 8086 XCHG instruction which can swap a register value with ...
Kyle Jones's user avatar
  • 8,051

Only top scored, non community-wiki answers of a minimum length are eligible