Today we have progressed so far that we have computers with multiple ‘cores’ (in fact complete processors) on a single chip. But one way to understand the fundamentals of computers is to analyse far simpler computers from the past. This section will review those very fundamental concepts in terms of each of the following:
- a hypothetical programmable calculator
- one of the very first ever popular ‘mini-computers’
- the PDP-8 from 1965
- and the Intel 8080 cpu from 1974 that still influences the instructions of intel Xenon and ‘Core’ processors in 2017 .
The JavaScript (with Kotlin source code) version of the ‘hypothetical programmable calculator’ is available here. I will also add links to emulators for the PDP 8 and 8080.
Sections:
- Machine Code and Global Memory
- Stack Memory and Local Variables
- Heap Memory and garbage collection
- Memory: Global (Static) vs Stack(local) vs Heap(Objects)
[…] discussed is Global static memory, which is reserved before the program starts, and local stack memory that is allocated at the start […]
LikeLike
[…] As these names are accessible anywhere throughout the code, it follows that what they referenece should be available through out the code, so generally these are the name of global elements stored in global memory. […]
LikeLike
[…] To understand how memory works, it can be useful to consider how the CPU itself works, and what follows from that is how memory works. Languages are built on these underlying principles and automate using the different types of memory. […]
LikeLike