- stages in the software development lifecycle
- defining and understanding the problem
- planning and designing
- implementing
- testing and evaluating
- maintaining
- pseudocode
- different licenses
- railroad diagrams
- EBNF
- fetch-execute cycle:
- fetch: the instruction at the address in memory is indicated by the program counter, then incremented
- decode: the control unit decodes the instruction and prepares other components for execution
- execute: the instruction is executed (the ALU is used)
- store: the results (return) are stored in one or more of general-purpose registers. a further instruction is needed to move the results to RAM.
- Arithmetic Logic Unit (ALU):
- Functionality: The ALU performs both arithmetic operations and logic operations
- inputs: Receives data from input registers.
- outputs: After performing the operation, the ALU sends the result to an output register or back to memory.
- Flags: the ALU sets or clears certain flags based on operations’ results (zero flags indicating a zero, or flags to indicate an overflow etc.)
- loops
- Post test loop
- the code executes once before the condition is checked
- pre-test loop
- the condition is checked before any, code is executed