Path: utzoo!attcan!uunet!cs.utexas.edu!wuarchive!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!uflorida!haven!adm!smoke!gwyn From: gwyn@smoke.brl.mil (Doug Gwyn) Newsgroups: comp.sys.apple2 Subject: Re: instruction sets (was: MacMusings) Message-ID: <14271@smoke.brl.mil> Date: 29 Oct 90 01:14:13 GMT References: <9010281734.AA18141@apple.com> Organization: U.S. Army Ballistic Research Laboratory, APG, MD. Lines: 29 In article <9010281734.AA18141@apple.com> MQUINN%UTCVM@PUCC.PRINCETON.EDU writes: >On Sat, 27 Oct 90 21:28:58 GMT Doug Gwyn said: >>One should note, however, that when fewer alternatives exist in the >>instructions, in general it will take more instructions to accomplish >>a given algorithm. The trade-offs are not simple to evaluate. >Yeah, that's what I thought, but how can having more bits per instruction >slow down, increase size, or make a program sloppy? >I think I can see how it might slow it down (if it does), but I'd think that >it would still be faster and more efficient than the extra instructions to >accomplish that task (as with that particular case I was originally talking >about with having more registers). As I said, it's not simple to evaluate. Machines with carefully designed simplified instruction sets can be implemented such that it takes fewer cycles of the system clock per instruction than for instruction sets that require several, synchronized actions to execute an instruction. This is the basic concept behind the so-called RISC (Reduced Instruction Set Computer) architectures that are now found in many fast workstation products. Another design possibility enabled by simple basic actions is the performance of several independent actions at the same time, the so-called "wide instruction word"; having to coordinate interacting complicated actions would make implementation of wide instruction words impractical. Programming these modern architectures is generally done in a high-level language, with the compiler taking care of the bookkeeping needed to schedule the processor's resources. Complex instruction sets are easier to use for assembly-language programming, but even for hobbyist computers there isn't much excuse for an appreciable amount of programming in assembler these days.