I have a question about the Mano base computer. The state diagram, shown below, implies that the output device will set the FGO flag to "1" after the job is done to continue the output activity from the PC (and to zero when device is busy).

But in most cases we don't have anything to do with the output and the flag stays at "1" and the cycle enters the interrupt routine every time. It seems like this leads to the computer running the interrupt routine most of the time.

Is this a bug in this system or am I missing something?

State Diagram FGO and FGI flags

  • $\begingroup$ I don't think the precise implementation details of a particular computer system are on-topic, here. $\endgroup$ Mar 19, 2016 at 19:24
  • $\begingroup$ @DavidRicherby I find it a bit strange that a theoretical computer model would be off-topic, though arguably the question wouldn't be fundamentally different if it was about a real machine. So let's discuss this on meta. $\endgroup$ Apr 4, 2016 at 22:44

1 Answer 1


You may have a misunderstanding of OUTR. OUTR is not the R in the flowchart you posted. Here is what is exactly done in the Mano system:

OUTR is not flag! It's a register for sending AC's value to the output device. FGO is a flag in system that shows whether the CPU is ready to send data to output device or not. So it is "1" by default. The CPU checks the flag:

  1. If FGO="1" : The device is ready to send output in an interrupt cycle! so R<--1 and the interrupt process will start: AC's content will be moved to OUTR in parallel and FGO="0" (means OUTR is full and you cannot send anything to output device!).
  2. If FGO="0": means that the device is busy reading data from OUTR so no more data can be send out.

At the end of the I/O process the R<--0 means get out of Interrupt cycle!

  • $\begingroup$ I'm sorry it was a typo. I meant FGO instead of OUTR $\endgroup$
    – AdibFara
    Mar 19, 2016 at 19:23
  • $\begingroup$ @SNAKY Doesn't matter. I explained about FGO in my answer $\endgroup$
    – Peyman.H
    Mar 19, 2016 at 19:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.