Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!cbatt!ihnp4!inuxc!iuvax!iucs!silver!sl109001 From: sl109001@silver.UUCP Newsgroups: comp.sys.apple Subject: Re: The speed of the 6502 Message-ID: <21600004@silver> Date: Wed, 25-Feb-87 21:29:00 EST Article-I.D.: silver.21600004 Posted: Wed Feb 25 21:29:00 1987 Date-Received: Sat, 28-Feb-87 03:20:08 EST References: <414@thumper.UUCP> Organization: Indiana University BACS, Bloomington Lines: 27 Nf-ID: #R:thumper.UUCP:-41400:silver:21600004:000:1429 Nf-From: silver.bacs.indiana.edu!sl109001 Feb 25 21:29:00 1987 More specifically, the quickest instructions on the 6502 (and 65C02) flit by in 2 cycles, with the slowest taking 7 cycles. The loading instructions actually vary by quite a bit, depending on where the byte is coming from. For example, "LDA #4" will load the A register with the CONSTANT integer 4 (kind of like: LET A = 4). This takes 2 cycles. On the other hand, "LDA (IND),Y" is a more complicated load, given the fancy name of "Indexed Indirect Mode", and takes 5 or 6 cycles. All computers need an internal clock so that the "microcode" evaluation of even these tiny instructions can be timed correctly with other processes. For example, interrupts are not handled until a machine language instruction is completely finished, and this will always be at the end of a cycle. What I like about the 65C02 instruction set is that it's relatively simple (or as simple as machine language CAN be!), and seems well organized to me. Once you've mastered it, other micro- processors are easy to learn as well. And when you think about it, there's ultimately no such thing as a high level language anyway. . . ____________________________________________ "May the forces of evil become confused on the way to your house." -- George Carlin Pensively, Phaedrus (aka Colin Klipsch) Indiana University sl109001@silver.bacs.indiana.edu