Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
National Semiconductor SC/MP
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===ALU and main registers=== The [[arithmetic logic unit]] (ALU) was [[Accumulator (computing)|accumulator]]-based, with a single 8-bit accumulator, AC. A second 8-bit register, "Extension", or E, could be used as a backup for AC. E could not be accessed directly by most instructions; one could not load data from memory directly into E for instance. Instead, the value in AC could be read from E, or AC and E could be swapped. E can also be used as the source value for the seven logical/arithmetic operations supported by the ALU. If E were not used for other operations, it could also be used in a fashion similar to the mirror registers seen in designs like the [[Zilog Z80]], with E acting as a quick way to store the value of AC during an [[interrupt]].{{sfn|Handbook|1977|p=1.6}} A major purpose of E was to act as a buffer for the built-in [[Serial communication|serial I/O]] system.{{sfn|Osborne|Kane|1981|p=3.3}} This was driven by the SIO instruction, which [[Bitwise operation#Bit shifts|bit shifted]] the least significant bit in E to a [[Flip-flop (electronics)|latch]] which was connected to the SOUT pin on the processor. Repeated calls to SIO thus presented bits of the 8-bit E value one at a time to the output, or reversed this operation for reading from the SIN pin.{{sfn|Handbook|1977|p=1.2, 1.10}} Once a complete 8-bit value had been read or written, the value could be sent to memory by exchanging the value with A and then loading or storing A to memory.{{sfn|Handbook|1977|p=1.6}} E could also be used as the source for logical operations on AC, so for instance, one could read a status byte in from the serial port and then AND that value with a mask in AC, to check for various status bits read from an external device.{{sfn|Handbook|1977|p=1.13}} The separate Status Register was 8-bits. The three least-significant-bits, 0 through 2, were connected directly to pins, providing an easy way to check external device's status.{{sfn|Handbook|1977|p=1.6}} A further two pins, Sense A and B, were connected to bits 4 and 5. Sense A was normally used to service interrupts (see details below). Interrupts could be turned off by setting bit 3, Interrupt Enable (IE) to 0 with the Disable Interrupt instruction, DINT, and enabled with IEN, or by moving the value to and from A and manipulating it there. Bits 6 and 7 were conventional overflow and carry flags, as seen in most processors.{{sfn|Handbook|1977|p=1.3}}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)