Difference between revisions of "Computing device"

From Computer History Wiki
Jump to: navigation, search
m (Further reading: New editor syntax)
(Programmed is not 'configurable')
Line 1: Line 1:
'''Computing devices''' are a more general class of devices which could perform complicated calculations than 'computers', the meaning of which is generally now 'stored-program computing device' (i.e. the control [[program]] is stored in [[memory]] that the computer can modify, allowing the program to change itself if it desires).
+
'''Computing devices''' are a more general class of devices which could perform complicated calculations than 'computers', the meaning of which is generally now 'stored-program computing device' (i.e. the control [[program]] - which it must be emphasized is a specified series of elementary steps - is stored in [[memory]] that the computer can modify, allowing the program to change itself if it desires).
  
Whether or not the ability to modify its own program is important, for something to be classified as a 'computer', can be debated; modern computers almost always run [[pure code]] (in part because [[self-modifying code]] can be difficult to understand and [[debug]]), so it is probably not critical; indeed, [[embedded system]]s usually use [[read-only memory|ROM]] for their program storage. On the other hand, program modifiability is a key aspect of classical [[Turing machine]]s; but it might be possible for a machine running out of ROM to [[emulator|emulate]] a Turing machine, thereby making such a machine a Turing machine. It is also possible that having the ability to do [[conditional branch]]es could be an alternative to being able to modify the program, for [[Turing completeness]].
+
Whether or not the ability to modify its own program is important, for something to be classified as a 'computer', can be debated; modern computers almost always run [[pure code]] (in part because [[self-modifying code]] can be difficult to understand and [[debug]]), so it is probably not critical; indeed, [[embedded system]]s usually use [[read-only memory|ROM]] for their program storage. On the other hand, program modifiability is a key aspect of classical [[Turing machine]]s; but it might be possible for a machine running out of ROM to [[emulator|emulate]] a Turing machine, thereby making such a machine a Turing machine. It is also possible that having the ability to do [[conditional branch]]es could be an alternative to being able to modify the program, for [[Turing complete]]ness.
  
 
Complex computing devices (i.e. things considerably more complex than a simple adding machines) generally preceded the creation of computers (as defined above); although as Michael Williams observed, "If you add enough adjectives to a description you can always claim [a particular machine to be the 'first']."
 
Complex computing devices (i.e. things considerably more complex than a simple adding machines) generally preceded the creation of computers (as defined above); although as Michael Williams observed, "If you add enough adjectives to a description you can always claim [a particular machine to be the 'first']."

Revision as of 23:22, 3 December 2023

Computing devices are a more general class of devices which could perform complicated calculations than 'computers', the meaning of which is generally now 'stored-program computing device' (i.e. the control program - which it must be emphasized is a specified series of elementary steps - is stored in memory that the computer can modify, allowing the program to change itself if it desires).

Whether or not the ability to modify its own program is important, for something to be classified as a 'computer', can be debated; modern computers almost always run pure code (in part because self-modifying code can be difficult to understand and debug), so it is probably not critical; indeed, embedded systems usually use ROM for their program storage. On the other hand, program modifiability is a key aspect of classical Turing machines; but it might be possible for a machine running out of ROM to emulate a Turing machine, thereby making such a machine a Turing machine. It is also possible that having the ability to do conditional branches could be an alternative to being able to modify the program, for Turing completeness.

Complex computing devices (i.e. things considerably more complex than a simple adding machines) generally preceded the creation of computers (as defined above); although as Michael Williams observed, "If you add enough adjectives to a description you can always claim [a particular machine to be the 'first']."

See also

Further reading

External links