4 ms·
Program Counter = Counter used for programs. Counts bytes for position of next instruction. Within an early context and machine code vs hw level, not totally u
by loopz 6y ago
Program Counter = Counter used for programs. Counts bytes for position of next instruction.
Within an early context and machine code vs hw level, not totally unreasonable as a legacy term. "Counter" was often used as name, even when starting at 0.
Wrong before internet or just pioneers? And what wrongs do we now do, or not?
- souprock 6y agoIt sometimes seems to count, but then an interrupt happens or there is a backwards jump. That isn't counting. 42, 45, 47, 3, 4, 7, 37953, 37955, 37959, 11, 12, 15... Actual counting on real hardware does happen. For example, x86 has the CX/ECX/RCX register for string operations. That has a far better justification for being called a program counter, but still that would be awful terminology. Another example is the CTR register of PowerPC, commonly used with an instruction that decrements it and then conditionally branches to do a loop. Even a cycle counter has better justification for being called a program counter.
- loopz 6y agoYes, I let go of "counters" some two decades ago. Personally prefer index or just i, instead. The way it used to go. Call something counter. Increment it each loop. Use goto for looping. Over time, add more gotos and change "counter" value. It tends to creep in, and clear names are important.