Enumerations allow us to specify identifiers for integer values without having to specify a long list of global variables or constants. We also covered unions, which are a bit more esoteric, but useful anyway. Sometimes we need to access an array of long ints as individual char bytes, with a union you can do that! Lastly, we rounded-up with bit-fields: a C programming built-in that allows us to identify and work with specific bits by name.
This isn’t THEE only memory map of every program everywhere, but it is generally the memory map for most programs most average programmers create, being imperative. In programming languages like assembly or C, you work with this map pretty directly, but in more abstract or higher-level languages such as Python or PHP, many of these memory issues and placements are taken care of for you by the interpreter or compiler.