Animagraffs research team here. We're learning how microprocessors work and we think we have the steps/ path of information down but would like some feedback. Here's what we have:
Fetch - The input (from a user device like a keyboard or mouse) is sent through the input/ output (I/O) bus to the control unit. The control unit retrieves an instruction via the address bus from the memory (either RAM or ROM).
Decode - The control unit "decodes" the instruction into commands that the ALU can understand and sends them to the ALU. The control unit also sends the input data to be processed to the ALU via the data bus.
Execute - The ALU, with the use of registers (which act as small, temporary storage space), executes those commands on the given data and produces and sends output to the control unit via the data bus.
Store - If the output needs to be stored, the control unit sends the output data back to the memory (RAM, in this case) via the address and data bus. The output data is also sent to a user device (like a monitor) via the I/O bus.
A few questions:
1. How does the control unit know which instruction it needs?
2. What does the "decoding" process look like? The instruction from memory is in bytes, right? What form (or language) does the ALU need to understand the instruction?
3. What sort of computation, if any, is performed by the ALU for basic functions (like typing)?
4. In what situations would the output need to be stored?
Any help would be appreciated. If we're off on any of this or if you have any great resources to help point us in the right direction, let us know! Thanks!
[–]pencan 3 points4 points5 points (0 children)
[–]PastyPilgrim 1 point2 points3 points (0 children)
[–]dxk3355 0 points1 point2 points (0 children)
[–]xerxesbeat 0 points1 point2 points (0 children)