0
$\begingroup$

Say I have the following intsruction represented in a number of languages:

| Language                   |                    Instruction                           |
|----------------------------+----------------------------------------------------------|
| English                    |                                          add six to five |
| Python                     |                                                      6+5 |
| Assembly                   |                                                 ADD(6,5) |
| MachineX,BinaryEncoding1   | 01111100000001111111100010101010101010101010101010101011 |
| MachineX,BinaryEncoding2   |       01111100000001111111100111111111111010101010101011 |
| MachineY,TernaryEncoding2  |                                 021021212121200202120202 |
| MachineZ,100004aryEncoding |                                                        p |

How might I compare the amount of computational work done by each machine? Perhaps clock operations? What framework might I use to better articulate what I mean by "computational work"?

What if the number of possible inputs implied by the original instruction was variable as well, say:

Send message "hello dad" from virtual commodore 64 to virtual commodore VIC20 via virtual SMS

$\endgroup$
6
  • 2
    $\begingroup$ What do you mean with the "amount of computational work"? If you are talking about time or space, the answer to your question is "the entire field of computational complexity theory". $\endgroup$
    – quicksort
    Commented Jan 7, 2017 at 20:31
  • 1
    $\begingroup$ What you are comparing depends on why you are comparing. What goal are you trying to achieve? Also, how about measuring the execution "wall time" on each of the machines? $\endgroup$ Commented Jan 7, 2017 at 20:32
  • $\begingroup$ @quicksort thanks. Are there alternatives to time and space? I think the field of Algorithmic Information Theory (en.wikipedia.org/wiki/Algorithmic_information_theory). You are probably right with that answer! $\endgroup$
    – Lee
    Commented Jan 7, 2017 at 20:52
  • $\begingroup$ @YuvalFilmus Thanks, I'd like to design (or understand how one might) a virtual machine with optimised resource (time,space) footprint for a known (v large) set of instructions (instruction space?). Still grappling with terminology at the moment. $\endgroup$
    – Lee
    Commented Jan 7, 2017 at 20:57
  • $\begingroup$ @quicksort in answer to your question; I'm not certain. I'm asking, in part, to find out what definitions exist. $\endgroup$
    – Lee
    Commented Jan 8, 2017 at 10:53

0

Your Answer

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

Browse other questions tagged or ask your own question.