How much do you know about Information Technology?

90%

The … translates an entire program into machine language before execution

I said interpreter, as that's exactly what an interpreter does.

A compiler could be compiling into machine code, but not necessarily so. Consider a java compiler, which compiles into byte code, which itself is then, yes, interpreted by the JVM into instructions the OS can understand & execute. Hence (among other responsibilities), the JVM fulfills the role of "interpreter".

So, while a compiler may or may not be translating into machine code, an interpreter (usually) always is.
 
90%

The … translates an entire program into machine language before execution

I said interpreter, as that's exactly what an interpreter does.

A compiler could be compiling into machine code, but not necessarily so. Consider a java compiler, which compiles into byte code, which itself is then, yes, interpreted by the JVM into instructions the OS can understand & execute. Hence (among other responsibilities), the JVM fulfills the role of "interpreter".

So, while a compiler may or may not be translating into machine code, an interpreter (usually) always is.

The expected answer is compiler. The more correct answer is interpreter.

An entire program into machine language before execution. Interpreters translate source code/byte code into machine code line by line and execute immediately. That alone rules out interpreters. Multiple choice is also about choosing the most correct option when technicalities arise.

The most correct option is compiler.
 
Last edited:
The entire program into machine language. Interpreters translate source code/byte code into machine code line by line and execute immediately. That alone rules out interpreters. Multiple choice is also about choosing the most correct option when technicalities arise.

The most correct option is compiler.

Good point, though it doesn't say "... before execution of any part of the program", which still leaves interpreter as the most correct answer. As mentioned, a compiler may not even be translating into machine code at all, which, at best, makes it a very dubious answer.
"some compilers translate into machine language" sure, I can live with that.
"compilers translate into machine language"... ehhhh, no, no, not all of them.

It's like saying "animals are warm-blooded". Sure, some of them are, but some of them are not.
 
I'm going to have to disagree with you.

Good point, though it doesn't say "... before execution of any part of the program", which still leaves interpreter as the most correct answer.

Yes it does. "The … translates an entire program into machine language before execution". By translating the entire program into machine code before execution you are translating before executing any part of the program.

As mentioned, a compiler may not even be translating into machine code at all, which, at best, makes it a very dubious answer.
"some compilers translate into machine language" sure, I can live with that.
"compilers translate into machine language"... ehhhh, no, no, not all of them.

It's like saying "animals are warm-blooded". Sure, some of them are, but some of them are not.

The question is: "The … translates an entire program into machine language before execution".

Some (most?) compilers do exactly that, but interpreters do not translate the entire program into machine code before execution. Thus the most correct answer is compiler.
 
Last edited:
I'm gonna have to disagree with you.

And I'm gonna have to start agreeing with you.

Yes it does. "The … translates an entire program into machine language before execution". By translating the entire program into machine code before execution you are translating before executing any part of the program.

The question is: "The … translates an entire program into machine language before execution".

Some (most?) compilers do exactly that, but interpreters do not translate the entire program into machine code before execution. Thus the most correct answer is compiler.

I now accept what you're saying and agree that "compiler" is the most correct answer.

However, note that worded as the question is, it implies that all compilers translate the entire program into machine language before execution, which we agree is not correct. So "compiler" is perhaps more accurately described as "the least incorrect answer" as opposed to "the most correct answer".

EDIT:
ps: and thanks for persevering. I can be rather stubborn at times :o
 
Last edited:
100%

Some questions here are tricky, like #2, #6, #9.

In general, difficult for those who haven't studied for IT, or never dealt with computer hardware assembly and setup, or had business with programming.
 
Guys these are really the easiest of the multiple choice type questions. And the multiple choice section of the exam is the easiest section of the entire exam... So yeah... This test doesn't mean much. Disclaimer: I did matric IT last year.
 
A switch will still work, but meh, whatever
Yup it will. The question is poorly phrased by including the "needed."

I don't understand why people are arguing about routers VS switches.

Routers route traffic between networks. Yes you get layer 3 switches, but why not choose the obvious answer?
You mean the best one for the job? That's not what the ambiguous question asks.

I'm going to have to disagree with you.



Yes it does. "The … translates an entire program into machine language before execution". By translating the entire program into machine code before execution you are translating before executing any part of the program.



The question is: "The … translates an entire program into machine language before execution".

Some (most?) compilers do exactly that, but interpreters do not translate the entire program into machine code before execution. Thus the most correct answer is compiler.
While I agree with you on that it's not a hard rule and they do have a point. An interpreter may translate the entire program into machine code just as a compiler may not compile to machine code. So both answers are somewhat correct while neither are completely correct. I think it's a stupid question to include both.

Btw I got the compiler and router question correct so it's not sour grapes but pointing out the standard of exams.
 
100%

Some questions here are tricky, like #2, #6, #9.

In general, difficult for those who haven't studied for IT, or never dealt with computer hardware assembly and setup, or had business with programming.
Well "between networks" implies different networks. Using a switch would make it the same network. No one uses hubs and "hot spot" is more advertising than IT.

6 was a bit vague as "static" and "interactive" are not well defined terms. A page with a javascript rollover could be considered "interactive" and "static". #1 is true and "dynamic" is more marketing speak.

With 9,i is just wrong. ii is less true since plug and play than it used to be but it does still initialise basic things then hand over once the OS loads. iii is just wrong and iv is true.
 
These questions were a lot more straightforward than the matric math lit test.
 
9/10. Dropped IT for Business Economics in school well over a decade back. (3 different teachers in 1 month, Matric)

Ironically, I got question 6 wrong :p
 
Top
Sign up to the MyBroadband newsletter
X