Академический Документы
Профессиональный Документы
Культура Документы
programming
Developing assembly The process of developing an assembly language program depends on a number
language programs of factors including the hardware configuration available for software develop-
ment and the range of software tools available to the developer. As a minimum,
the task normally involves the following steps:
1 Analysing the problem and producing a specification for both hardware and
software (see Chapter 4).
2 Developing the overall structure of the program, defining the individual ele-
ments and modules within it, and identifying those which already exist (or
can be easily modified or extended) within the programmer’s existing library.
3 Coding each new module required using assembly language mnemonics,
entering the text using an editor, and saving each source code module to disk
using an appropriate filename.
4 Assembling each source code module (using an assembler) to produce an
intermediate relocatable object code file.
5 Linking modules (including those taken from the user’s library) in order to
produce a complete executable program.
6 Testing, debugging, and documenting the final program prior to evaluation
and/or acceptance testing by the end-user (see Chapter 4).
In practice, the development process is largely iterative and there may also
be some considerable overlap between phases. In order to ensure that the tar-
get specification is met within the constraints of time and budget, an ongoing
appraisal is necessary in order to maximize resources in the areas for which
there is much need.
Software tools
The following items of utility software (software tools) are normally required
in the development process:
• an ASCII text editor (e.g. Microsoft’s M);
• a macro assembler (e.g. Microsoft’s MASM);
• a linker (e.g. Microsoft’s LINK).
Buy this file from http://www.download-it.org/learning-resources.php?promoCode=&partnerID=&content=story&storyID=1376
In addition, three further software tools may be found to be invaluable.
These are:
• a cross-referencing utility (e.g. Microsoft’s CREF);
• a library manager (e.g. Microsoft’s LIB);
• a utility which can help automate the program development cycle (e.g.
Microsoft’s MAKE).
Note that, in order to assist the programmer and to help automate the produc-
tion of executable code, an Integrated Development Environment (IDE) is often
used. This acts as a ‘shell’ which launches the various software tools, passing
any required parameters without requiring the user to be aware of the necessary
command syntax. However, for the benefit of the newcomer to assembly lan-
guage programming, we shall briefly explain the function of each of the basic
tools and their role in the production of assembly language programs.
Editors
Editors allow users to create and manipulate text files. Such files can be thought
of as a sequence of keystrokes saved to disk. An assembly language source
code file is simply a text file written using assembly language mnemonics and
containing appropriate assembler directives.
The Microsoft Editor (M) is invoked using a command line of the form:
M <options><file list>
The options include that of allowing the user to load a previously saved con-
figuration file (TOOLS.INI). This file contains settings which will be used to
initialize the editor and thus the user may easily customize the software to
his/her own particular requirements. The file list is simply a list of files that will
be loaded into the editor. The first file in the list will be the first to be edited.
Then, when the user selects the exit option (F8), the next file in the list, ready
for editing, is loaded.
The publisher detailed in the title page holds the copyright for this document
All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted,
in any form or by any means, electronic, mechanical, photocopying, recorded or otherwise, without the written
permission of Spenford IT Ltd who are licensed to reproduce this document by the
publisher
rights@download-it.org
www.download-it.org