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 ...
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 ...
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.♦
- 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 ...
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 ...
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 ...
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 ...
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 ...
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.♦
- 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 ...
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 ...
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 ...
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 ...
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 (...
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 ...
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 ...
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; ...
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 ...
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; ...
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 ...
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....
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, ...
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: ...
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).
...
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 ...
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:
...
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 ...
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 ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
memory-hardware × 208computer-architecture × 93
memory-access × 43
memory-management × 35
cpu-cache × 31
cpu × 25
operating-systems × 23
virtual-memory × 15
memory-allocation × 14
storage × 5
reference-request × 4
arithmetic × 4
performance × 4
filesystems × 4
cache × 4
time-complexity × 3
data-structures × 3
terminology × 3
paging × 3
os-kernel × 3
algorithms × 2
computer-networks × 2
parallel-computing × 2
simulation × 2
process-scheduling × 2