MCS6500

Microcomputer Family

Programming Manual


CHAPTER 1

INTRODUCTORY REMARKS

1.0 MANUAL INTRODUCTION

Welcome to the MCS650X product family. This manual is designed to
work in conjunction with the Hardware Manual which describes the basic
hardware considerations when using the MOS Technology, Inc. microcomputer
family.
Before reading this manual, it is suggested that the reader acquaint
himself with the Hardware Manual in order to understand the components
available in this system, how these components are interconnected, and
their basic architecture. Developed in this manual is the concept of
microprocessor internal architecture and how it is used, with attention
given to input/output considerations. Familiarity with the hardware will
facilitate easier understanding of these important concepts.
In order to best serve the total customer base, this manual is written
in two levels. The first is a very basic introduction to the MCS650X family,
and the second level is for the user who has to refer to the manual
on more than an occasional basis and who wants to rapidly scan and find
specific sections. For the user who is quite familiar with programming
and the MCS650X instruction set, the appendices are the best reference in
the sense that all the data which is discussed in detail in the manual is
summarized in a series of tables for convenience.
It is recommended that the user who is an experienced programmer and
familiar with microprocessors still take the time to read through the
manual in detail. Some of the architectural concepts are different from
those found in second generation machines and this manual instructs the
user how to optimize the utilization of the microprocessor while providing
an introduction of its basic concepts.
Criticism of this manual is welcomed at all times. Of particular
interest are cases where one could not, by use of the index and appendix,
rapidly find the answer to a question which developed in the course of
designing a microprocessor system. Welcomed are any comments which "will
enhance the content and format of this manual in future editions or addendums.

1.1 MICROPROCESSOR ARCHITECTURE

The MCS6501, MCS6502, MCS6503, MCS6504, and MCS6505 are all 8-bit
microprocessors. That means that 8 bits of data are transferred or operated
upon during each instruction cycle or operation cycle.
All devices in the MCS650X family operate on data 8 bits at a time,
although some of the operations will look like serial or 16-bit wide operations.
In a future section, discussed will be the use of sequential
operations on an 8-bit basis and how one can accomplish 16-bit effective
operands and addressing.
The computer industry, for some time, has been treating 8-bit combinations
of data by a term known as a "byte." In many large computers which
operate simultaneously on multiple bytes of data, the number of bytes which
are transferred and operated on by the machine in parallel are called a
"word." Because these microprocessors are 8-bit microprocessors, the words
and bytes are of equal length. Therefore, for convenience through the discussion
of the basic 8-bit processors, "byte" and "word" will be used
synonymously although in some of the expanded versions there will exist a
16-bit word composed of two 8-bit bytes.