ARM ASSEMBLY LANGUAGE Hohl Hinds EDITION Fundamentals and Techniques SECOND 0 0 0 0 9 1

Total Page:16

File Type:pdf, Size:1020Kb

ARM ASSEMBLY LANGUAGE Hohl Hinds EDITION Fundamentals and Techniques SECOND 0 0 0 0 9 1 Computer Science and Engineering Hohl Hinds ARM ASSEMBLY ARM ASSEMBLY “Assembly language programming is still the best way to learn about the internals of processors and this is one of a very few books that teaches that skill for ARM® processors. It covers the necessary material in a well-organized manner. Updated for newer versions of ARM processors, it adds good material on floating-point arithmetic that was missing from the first edition.” —Ronald W. Mehler, California State University, Northridge, USA “This text retains the ease of using the ARM7TDMI while moving the Fundamentals and Techniques student [or reader] into the more capable Cortex-M4. …The addition of the Cortex-M4 makes this a much stronger text.” —Ralph Tanner, Western Michigan University, Kalamazoo, USA Delivering a solid introduction to assembly language and embedded systems, ARM Assembly Language: Fundamentals and Techniques, Second Edition continues to support the popular ARM7TDMI, but also addresses the latest architectures from ARM, including Cortex™-A, Cortex-R, and Cortex-M processors—all of which have slightly different instruction sets, programmer’s models, and exception handling. Featuring three brand-new chapters, a new appendix, and expanded coverage of the ARM7™, this edition: LANGUAGE • Discusses IEEE 754 floating-point arithmetic and explains how to program with the IEEE standard notation • Contains step-by-step directions for the use of Keil™ MDK-ARM and Texas Instruments (TI) Code Composer Studio™ • Provides a resource to be used alongside a variety of hardware evaluation modules, such as TI’s Tiva Launchpad, STMicroelectronics’ iNemo and Discovery, and NXP Semiconductors’ Xplorer boards Written by experienced ARM processor designers, ARM Assembly Language: Fundamentals and Techniques, Second Edition covers the topics essential to writing meaningful assembly programs, making it an ideal textbook and professional reference. SECOND EDITION K22631 ISBN: 978-1-4822-2985-1 90000 9 781482 229851 K22631_COVER_final.indd 1 9/12/14 3:07 PM SECOND EDITION ARM ASSEMBLY LANGUAGE Fundamentals and Techniques SECOND EDITION ARM ASSEMBLY LANGUAGE Fundamentals and Techniques William Hohl Christopher Hinds ARM, Inc., Austin, Texas Boca Raton London New York CRC Press is an imprint of the Taylor & Francis Group, an informa business CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 2015 by William Hohl and Christopher Hinds CRC Press is an imprint of Taylor & Francis Group, an Informa business No claim to original U.S. Government works Version Date: 20140915 International Standard Book Number-13: 978-1-4822-2986-8 (eBook - PDF) This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint. Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmit- ted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. For permission to photocopy or use material electronically from this work, please access www.copyright. com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged. Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe. Visit the Taylor & Francis Web site at http://www.taylorandfrancis.com and the CRC Press Web site at http://www.crcpress.com To our families Contents Preface......................................................................................................................xv Acknowledgments ...................................................................................................xxi Authors ................................................................................................................. xxiii Chapter 1 An Overview of Computing Systems ...................................................1 1.1 Introduction ...............................................................................1 1.2 History of RISC .........................................................................3 1.2.1 ARM Begins ................................................................5 1.2.2 The Creation of ARM Ltd. ...........................................7 1.2.3 ARM Today ..................................................................9 1.2.4 The Cortex Family ..................................................... 10 1.2.4.1 The Cortex-A and Cortex-R Families ......... 10 1.2.4.2 The Cortex-M Family ................................. 11 1.3 The Computing Device ............................................................12 1.4 Number Systems ......................................................................15 1.5 Representations of Numbers and Characters .......................... 18 1.5.1 Integer Representations .............................................. 18 1.5.2 Floating-Point Representations .................................. 21 1.5.3 Character Representations ..........................................23 1.6 Translating Bits to Commands ................................................24 1.7 The Tools .................................................................................25 1.7.1 Open Source Tools .....................................................27 1.7.2 Keil (ARM) ................................................................27 1.7.3 Code Composer Studio ...............................................28 1.7.4 Useful Documentation ................................................30 1.8 Exercises ..................................................................................30 Chapter 2 The Programmer’s Model .................................................................. 33 2.1 Introduction ............................................................................. 33 2.2 Data Types ............................................................................... 33 2.3 ARM7TDMI ...........................................................................34 2.3.1 Processor Modes ........................................................34 2.3.2 Registers ..................................................................... 35 2.3.3 The Vector Table ........................................................38 2.4 Cortex-M4 ................................................................................39 2.4.1 Processor Modes ........................................................40 2.4.2 Registers .....................................................................40 2.4.3 The Vector Table ........................................................42 2.5 Exercises .................................................................................. 43 vii viii Contents Chapter 3 Introduction to Instruction Sets: v4T and v7-M .................................45 3.1 Introduction .............................................................................45 3.2 ARM, Thumb, and Thumb-2 Instructions ..............................46 3.3 Program 1: Shifting Data.........................................................46 3.3.1 Running the Code ....................................................... 47 3.3.2 Examining Register and Memory Contents ...............49 3.4 Program 2: Factorial Calculation ............................................ 51 3.5 Program 3: Swapping Register Contents ................................. 53 3.6 Program 4: Playing with Floating-Point Numbers ..................54 3.7 Program 5: Moving Values between Integer and Floating- Point Registers ......................................................................... 55 3.8 Programming Guidelines ........................................................56 3.9 Exercises ..................................................................................57 Chapter 4 Assembler Rules and Directives .........................................................59 4.1 Introduction .............................................................................59 4.2 Structure of Assembly Language Modules .............................59 4.3 Predefined Register Names .....................................................63 4.4 Frequently Used Directives .....................................................63 4.4.1 Defining a Block of Data or Code ..............................63 4.4.1.1 Keil Tools ....................................................64 4.4.1.2 Code Composer Studio Tools .....................65 4.4.2 Register Name Definition ...........................................66 4.4.2.1 Keil Tools ....................................................66
Recommended publications
  • Computer Architectures
    Computer Architectures Motorola 68000, 683xx a ColdFire – CISC CPU Principles Demonstrated Czech Technical University in Prague, Faculty of Electrical Engineering AE0B36APO Computer Architectures Ver.1.10 1 Original Desktop/Workstation 680X0 Feature 68000 'EC000 68010 68020 68030 68040 68060 Data bus 16 8/16 16 8/16/32 8/16/32 32 32 Addr bus 23 23 23 32 32 32 32 Misaligned Addr - - - Yes Yes Yes Yes Virtual memory - - Yes Yes Yes Yes Yes Instruct Cache - - 3 256 256 4096 8192 Data Cache - - - - 256 4096 8192 Memory manager 68451 or 68851 68851 Yes Yes Yes ATC entries - - - - 22 64/64 64/64 FPU interface - - - 68881 or 68882 Internal FPU built-in FPU - - - - - Yes Yes Burst Memory - - - - Yes Yes Yes Bus Cycle type asynchronous both synchronous Data Bus Sizing - - - Yes Yes use 68150 Power (watts) 1.2 0.13-0.26 0.13 1.75 2.6 4-6 3.9-4.9 at frequency of 8.0 8-16 8 16-25 16-50 25-40 50-66 MIPS/kDhryst. 1.2/2.1 2.5/4.3 6.5/11 14/23 35/60 100/300 Transistors 68k 84k 190k 273k 1,170k 2,500k Introduction 1979 1982 1984 1987 1991 1994 AE0B36APO Computer Architectures 2 M68xxx/CPU32/ColdFire – Basic Registers Set 31 16 15 8 7 0 User programming D0 D1 model registers D2 D3 DATA REGISTERS D4 D5 D6 D7 16 15 0 A0 A1 A2 A3 ADDRESS REGISTERS A4 A5 A6 16 15 0 A7 (USP) USER STACK POINTER 0 PC PROGRAM COUNTER 15 8 7 0 0 CCR CONDITION CODE REGISTER 31 16 15 0 A7# (SSP) SUPERVISOR STACK Supervisor/system POINTER 15 8 7 0 programing model (CCR) SR STATUS REGISTER 31 0 basic registers VBR VECTOR BASE REGISTER 31 3 2 0 SFC ALTERNATE FUNCTION DFC CODE REGISTERS AE0B36APO Computer Architectures 3 Status Register – Conditional Code Part USER BYTE SYSTEM BYTE (CONDITION CODE REGISTER) 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 T1 T0 S 0 0 I2 I1 I0 0 0 0 X N Z V C TRACE INTERRUPT EXTEND ENABLE PRIORITY MASK NEGATIVE SUPERVISOR/USER ZERO STATE OVERFLOW CARRY ● N – negative ..
    [Show full text]
  • RTEMS CPU Supplement Documentation Release 4.11.3 ©Copyright 2016, RTEMS Project (Built 15Th February 2018)
    RTEMS CPU Supplement Documentation Release 4.11.3 ©Copyright 2016, RTEMS Project (built 15th February 2018) CONTENTS I RTEMS CPU Architecture Supplement1 1 Preface 5 2 Port Specific Information7 2.1 CPU Model Dependent Features...........................8 2.1.1 CPU Model Name...............................8 2.1.2 Floating Point Unit..............................8 2.2 Multilibs........................................9 2.3 Calling Conventions.................................. 10 2.3.1 Calling Mechanism.............................. 10 2.3.2 Register Usage................................. 10 2.3.3 Parameter Passing............................... 10 2.3.4 User-Provided Routines............................ 10 2.4 Memory Model..................................... 11 2.4.1 Flat Memory Model.............................. 11 2.5 Interrupt Processing.................................. 12 2.5.1 Vectoring of an Interrupt Handler...................... 12 2.5.2 Interrupt Levels................................ 12 2.5.3 Disabling of Interrupts by RTEMS...................... 12 2.6 Default Fatal Error Processing............................. 14 2.7 Symmetric Multiprocessing.............................. 15 2.8 Thread-Local Storage................................. 16 2.9 CPU counter...................................... 17 2.10 Interrupt Profiling................................... 18 2.11 Board Support Packages................................ 19 2.11.1 System Reset................................. 19 3 ARM Specific Information 21 3.1 CPU Model Dependent Features..........................
    [Show full text]
  • Computer Architectures an Overview
    Computer Architectures An Overview PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sat, 25 Feb 2012 22:35:32 UTC Contents Articles Microarchitecture 1 x86 7 PowerPC 23 IBM POWER 33 MIPS architecture 39 SPARC 57 ARM architecture 65 DEC Alpha 80 AlphaStation 92 AlphaServer 95 Very long instruction word 103 Instruction-level parallelism 107 Explicitly parallel instruction computing 108 References Article Sources and Contributors 111 Image Sources, Licenses and Contributors 113 Article Licenses License 114 Microarchitecture 1 Microarchitecture In computer engineering, microarchitecture (sometimes abbreviated to µarch or uarch), also called computer organization, is the way a given instruction set architecture (ISA) is implemented on a processor. A given ISA may be implemented with different microarchitectures.[1] Implementations might vary due to different goals of a given design or due to shifts in technology.[2] Computer architecture is the combination of microarchitecture and instruction set design. Relation to instruction set architecture The ISA is roughly the same as the programming model of a processor as seen by an assembly language programmer or compiler writer. The ISA includes the execution model, processor registers, address and data formats among other things. The Intel Core microarchitecture microarchitecture includes the constituent parts of the processor and how these interconnect and interoperate to implement the ISA. The microarchitecture of a machine is usually represented as (more or less detailed) diagrams that describe the interconnections of the various microarchitectural elements of the machine, which may be everything from single gates and registers, to complete arithmetic logic units (ALU)s and even larger elements.
    [Show full text]
  • Gestalt Manager 1
    CHAPTER 1 Gestalt Manager 1 This chapter describes how you can use the Gestalt Manager and other system software facilities to investigate the operating environment. You need to know about the 1 operating environment if your application takes advantage of hardware (such as a Gestalt Manager floating-point unit) or software (such as Color QuickDraw) that is not available on all Macintosh computers. You can also use the Gestalt Manager to inform the Operating System that your software is present and to find out about other software registered with the Gestalt Manager. The Gestalt Manager is available in system software versions 6.0.4 and later. The MPW software development system and some other development environments supply code that allows you to use the Gestalt Manager on earlier system software versions; check the documentation provided with your development system. In system software versions earlier than 6.0.4, you can retrieve a limited description of the operating environment with the SysEnvirons function, also described in this chapter. You need to read this chapter if you take advantage of specific hardware or software features that may not be present on all versions of the Macintosh, or if you wish to inform other software that your software is present in the operating environment. This chapter describes how the Gestalt Manager works and then explains how you can ■ determine whether the Gestalt Manager is available ■ call the Gestalt function to investigate the operating environment ■ make information about your own hardware or software available to other applications ■ retrieve a limited description of the operating environment even if the Gestalt Manager is not available About the Gestalt Manager 1 The Macintosh family of computers includes models that use a number of different processors, some accompanied by a floating-point unit (FPU) or memory management unit (MMU).
    [Show full text]
  • From 128K to Quadra: Model by Model
    Chapter 12 From 128K to Quadra: Model by Model IN THIS CHAPTER: I What the specs mean I The specs for every Mac model ever made I Secrets of the pre-PowerPC Mac models I Just how much your Mac has devalued Yes, we’ve already been told that we’re nuts to attempt the next two chapters of this book. Since 1984, Apple has created more than 140 different Mac models — including 35 different PowerBooks and 53 different Performas! Each year, Apple piles on another dozen or so new models. By the time you finish reading this page, another Performa model probably will have been born. So, writing a couple of chapters that are supposed to describe every model is an exercise in futility. But we’re going to attempt it anyway, taking the models one by one and tracking their speeds, specs, and life cycles. This chapter will cover all the Apple Macs — both desktop and portable models — from the birth of the original Macintosh 128K to the release of the PowerBook 190, the last Mac ever made that was based on Motorola’s 68000-series processor chip. When you’re finished reading this chapter, you will be one of the few people on Earth who actually knows the difference between a Performa 550, 560, 575, 577, 578, 580, and 588. 375 376 Part II: Secrets of the Machine Chapter 13 will cover every Power Mac — or, more accurately, every PowerPC-based machine (those with four-digit model numbers) — from the first ones released in 1994 to the models released just minutes before this book was printed.
    [Show full text]
  • Assembly Language Programming
    Experiment 3 Assembly Language Programming Every computer, no matter how simple or complex, has a microprocessor that manages the computer's arithmetical, logical and control activities. A computer program is a collection of numbers stored in memory in the form of ones and zeros. CPU reads these numbers one at a time, decodes them and perform the required action. We term these numbers as machine language. Although machine language instructions make perfect sense to computer but humans cannot comprehend them. A long time ago, someone came up with the idea that computer programs could be written using words instead of numbers and a new language of mnemonics was de- veloped and named as assembly language. An assembly language is a low-level programming language and there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. We know that computer cannot interpret assembly language instructions. A program should be developed that performs the task of translating the assembly language instructions to ma- chine language. A computer program that translates the source code written with mnemonics into the executable machine language instructions is called an assembler. The input of an assembler is a source code and its output is an executable object code. Assembly language programs are not portable because assembly language instructions are specific to a particular computer architecture. Similarly, a different assembler is required to make an object code for each platform. The ARM Architecture The ARM is a Reduced Instruction Set Computer(RISC) with a relatively simple implementation of a load/store architecture, i.e.
    [Show full text]
  • Numerical Computation Guide
    Numerical Computation Guide Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303 U.S.A. 650-960-1300 Part No. 806-3568-10 May 2000, Revision A Send comments about this document to: [email protected] Copyright © 2000 Sun Microsystems, Inc., 901 San Antonio Road • Palo Alto, CA 94303-4900 USA. All rights reserved. This product or document is distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. For Netscape™, Netscape Navigator™, and the Netscape Communications Corporation logo™, the following notice applies: Copyright 1995 Netscape Communications Corporation. All rights reserved. Sun, Sun Microsystems, the Sun logo, docs.sun.com, AnswerBook2, Solaris, SunOS, JavaScript, SunExpress, Sun WorkShop, Sun WorkShop Professional, Sun Performance Library, Sun Performance WorkShop, Sun Visual WorkShop, and Forte are trademarks, registered trademarks, or service marks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and Sun™ Graphical User Interface was developed by Sun Microsystems, Inc.
    [Show full text]
  • Using and Porting the GNU Compiler Collection
    Using and Porting the GNU Compiler Collection Richard M. Stallman Last updated 28 July 1999 for gcc-2.95 Copyright c 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1998, 1999 Free Software Foundation, Inc. For GCC Version 2.95 Published by the Free Software Foundation 59 Temple Place - Suite 330 Boston, MA 02111-1307, USA Last printed April, 1998. Printed copies are available for $50 each. ISBN 1-882114-37-X Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the sections entitled \GNU General Public License" and \Funding for Free Software" are included exactly as in the original, and provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another lan- guage, under the above conditions for modified versions, except that the sections entitled \GNU General Public License" and \Funding for Free Software", and this permission no- tice, may be included in translations approved by the Free Software Foundation instead of in the original English. Chapter 1: Compile C, C++, Objective C, or Fortran 1 1 Compile C, C++, Objective C, or Fortran The C, C++, and Objective C, and Fortran versions of the compiler are integrated; this is why we use the name \GNU Compiler Collection". GCC can compile programs written in C, C++, Objective C, or Fortran.
    [Show full text]
  • Getting Started Creating Applications with Μv Ision ®4
    Getting Started Creating Applications with µV ision ®4 For 8-bit, 16-bit, and 32-bit Microcontrollers www.keil.com 2 Preface Information in this document is subject to change without notice and does not represent a commitment on the part of the manufacturer. The software described in this document is furnished under license agreement or nondisclosure agreement and may be used or copied only in accordance with the terms of the agreement. It is against the law to copy the software on any medium except as specifically allowed in the license or nondisclosure agreement. The purchaser may make one copy of the software for backup purposes. No part of this manual may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or information storage and retrieval systems, for any purpose other than for the purchaser’s personal use, without written permission. Copyright © 1997-2009 Keil, Tools by ARM, and ARM Ltd. All rights reserved. Keil Software and Design ®, the Keil Software Logo, µVision ®, RealView ®, C51™, C166™, MDK™, RL-ARM™, ULINK ®, Device Database ®, and ARTX™ are trademarks or registered trademarks of Keil, Tools by ARM, and ARM Ltd. Microsoft ® and Windows™ are trademarks or registered trademarks of Microsoft Corporation. PC ® is a registered trademark of International Business Machines Corporation. NOTE This manual assumes that you are familiar with Microsoft Windows and the hardware and instruction set of the ARM7, ARM9, Cortex-Mx, C166, XE166, XC2000, or 8051 microcontroller. Every effort was made to ensure accuracy in this manual and to give appropriate credit to persons, companies, and trademarks referenced herein.
    [Show full text]
  • ACORN RISC MACHINE Jitendra Marathe ARM Is a Reduced
    SRJIS / BIMONTHLY/JITENDRA MARATHE. (581-585) ACORN RISC MACHINE Jitendra Marathe ARM is a reduced instruction set computer (RISC) instruction set architecture (ISA) developed by ARM Holdings. It was named the Advanced RISC Machine and, before that, the Acorn RISC Machine. The ARM architecture is the most widely used 32-bit instruction set architecture in numbers produced. Originally conceived by Acorn Computers for use in its personal computers, the first ARM-based products were the co-processor modules for the BBC series of computers. Features and applications: In 2005 about 98% of the more than one billion mobile phones sold each year used at least one ARM processor. As of 2009 ARM processors accounted for approximately 90% of all embedded 32-bit RISC processors and were used extensively in consumer electronics, including personal digital assistants (PDAs), tablets, mobile phones, digital media and music players, hand-held game consoles, calculators and computer peripherals such as hard drives and routers. Licensees: The ARM architecture is licensable. Companies that are current or former ARM licensees include Alcatel-Lucent, Apple Inc., AppliedMicro, Atmel, Broadcom, Cirrus Logic, CSR_plc, Digital Equipment Corporation, Ember, Energy Micro, Freescale, Intel (through DEC), LG, Marvell Technology Group, Microsemi, Microsoft, NEC, Nintendo, Nuvoton, Nvidia, Sony, NXP (formerly Philips Semiconductor), Oki, ON Semiconductor, Psion, Qualcomm, Renesas, Samsung, Sharp, Silicon Labs, STMicroelectronics, Symbios Logic, Texas Instruments, VLSI Technology, Yamaha, Fuzhou Rockchip, and ZiiLABS. In addition to the abstract architecture, ARM offers several microprocessor core designs, including the ARM7, ARM9, ARM11, Cortex- A8, Cortex-A9, and Cortex-A15. Companies often license these designs from ARM to manufacture and integrate into their own system on a chip (SoC) with other components like RAM, GPUs, or radio basebands (for mobile phones).
    [Show full text]
  • SDSU Template, Version 11.1
    ENHANCEMENT OF MC68000 SIMULATOR MACROS TO SUPPORT FLOATING POINT NUMBER _______________ A Thesis Presented to the Faculty of San Diego State University _______________ In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science _______________ by Honey Walia Spring 2012 iii Copyright © 2012 by Honey Walia All Rights Reserved iv ABSTRACT OF THE THESIS Enhancement of MC68000 Simulator Macros to Support Floating Point Number by Honey Walia Master of Science in Computer Science San Diego State University, 2012 The purpose of this thesis is to write macros to support floating point number for BSVC simulator. This simulator provides a runtime environment which simulates a Motorola 68000 family CPU system. This system is currently used at SDSU to teach machine organization and assembly language programming to students in CS237. This thesis provides significant enhancements to the functionality of the system, making it more valuable tool for classroom instruction. v TABLE OF CONTENTS PAGE ABSTRACT ............................................................................................................................. iv LIST OF FIGURES ................................................................................................................ vii ACKNOWLEDGEMENTS ................................................................................................... viii CHAPTER 1 INTRODUCTION .........................................................................................................1 1.1
    [Show full text]
  • Acorn Business Computer
    Acorn The Acorn Even in its simplest form, the The addition of one circuit card, Business ABC Personal Assistant, this new containing a second Computer range provides the user with microprocessor and its comprises text and data processing associated memory, plus a a range of instantly. No need to load from second high capacity floppy disc office disc — a single keyword runs one drive provides the basis of the computers of the two programs installed in next level of the ABC range — and permanent memory. The the ABC 100. The fast, powerful workstations from the company programs are VIEW, the award and well proven Z80 Second that has achieved total winning word processor, and its Processor runs the CP/M dominance of the educational companion program, ViewSheet, operating system, for many years computer market. The practical a sophisticated financial analysis an industry standard, with a and compact two-box design and data processing program wealth of applications programs conceals an elegant and cost using the well proven available on floppy disc. The effective electronic design 'spreadsheet' simulation The ABC Personal Assistant is a main ABC circuit board philosophy which enables Acorn technique. single processor computer with continues to deal with the to provide an extremely wide one floppy disc drive providing keyboard, screen and range of variants. This makes the 640 Kilobytes of storage. communications options, so the ABC the single solution to Interfaces suitable for almost all programs running on the main almost all modern business currently available printers are processor are executed at problems. Common to all standard and space is provided speeds normally associated with models in the range is the within the case for further more expensive 16 bit processor keyboard and main case which communications options, to allow systems.
    [Show full text]