Dec 052017
ASM source code from “The BlueBook of Assembly Language”. | |||
---|---|---|---|
File Name | File Size | Zip Size | Zip Type |
BCD.ASM | 7552 | 1618 | deflated |
BCD.DOC | 3968 | 1174 | deflated |
BCD.IDX | 256 | 110 | deflated |
BCD.OBJ | 515 | 384 | deflated |
BINARY.ASM | 12416 | 2108 | deflated |
BINARY.DOC | 9216 | 1337 | deflated |
BINARY.IDX | 896 | 175 | deflated |
BINARY.OBJ | 814 | 508 | deflated |
BLUEBOOK.IDX | 4480 | 1407 | deflated |
FILES.ASM | 11648 | 3444 | deflated |
FILES.DOC | 8064 | 2082 | deflated |
FILES.IDX | 768 | 343 | deflated |
FILES.OBJ | 1787 | 1170 | deflated |
FLOATPT.ASM | 22784 | 5231 | deflated |
FLOATPT.DOC | 18688 | 3024 | deflated |
FLOATPT.IDX | 1152 | 369 | deflated |
GRAPHICS.ASM | 23552 | 5433 | deflated |
GRAPHICS.DOC | 13824 | 2790 | deflated |
GRAPHICS.IDX | 512 | 237 | deflated |
GRAPHICS.OBJ | 2276 | 1418 | deflated |
MULTIDGT.ASM | 8448 | 2009 | deflated |
MULTIDGT.DOC | 4992 | 1045 | deflated |
MULTIDGT.IDX | 256 | 104 | deflated |
SOUND.ASM | 9344 | 2819 | deflated |
SOUND.DOC | 12288 | 3548 | deflated |
SOUND.IDX | 512 | 271 | deflated |
SOUND.OBJ | 890 | 627 | deflated |
STDIO.ASM | 6912 | 1505 | deflated |
STDIO.DOC | 9472 | 1955 | deflated |
STDIO.IDX | 640 | 227 | deflated |
STDIO.OBJ | 476 | 324 | deflated |
STRINGS.ASM | 9216 | 2417 | deflated |
STRINGS.DOC | 9856 | 2240 | deflated |
STRINGS.IDX | 512 | 219 | deflated |
STRINGS.OBJ | 537 | 431 | deflated |
TPCREAD.ME | 199 | 165 | deflated |
Download File BLUEBOOK.ZIP Here
Contents of the BCD.DOC file
BCD.DOC -- Description of BCD.ASM
=================================
From `BLUEBOOK of ASSEMBLY ROUTINES for the IBM PC & XT'
by Christopher L. Morgan
Copyright (C) 1984 by The Waite Group, Inc.
Purpose: BCD.ASM contains routines to convert between internal binary
coded decimal (BCD) and other formats, both internal and external.
_______________________________________________________________________________
Contents:
---------
BCDIN-- Convert from ASCII Decimal to BCD
BCDOUT-- Convert from BCD to ASCII Decimal
BCD2I16-- Convert from BCD to 16-bit Binary
I162BCD-- Convert from 16-bit Binary to BCD
_______________________________________________________________________________
Overview:
These routines can convert external decimal representation and
internal BCD representation, and between internal binary and internal BCD.
The internal BCD format packs two decimal digits per byte, one per
nibble. By using a large number of bytes, you can precisely represent
high precision decimal numbers. These routines use 18 bytes of storage to
handle 36-digit BCD numbers, but are easily modified to handle other sizes.
Fixed point numbers can be handled by assigning a fixed position for
a decimal point. For example, dollars & cents can be handled by assigning
the decimal point so there are exactly two BCD digits to its right, which
form the fractional part of the number.
_______________________________________________________________________________
BCDIN
Function: This routine accepts a decimal number from the standard input
device and converts it to internal BCD format.
Input: The individual digits of the decimal number are received in ASCII
through a call to a standard I/O routine. The valid digits are 0
through 9. An ASCII code other than a digit will terminate the routine.
Output: On return a 36-digit number is stored in BCD form in an
18-byte buffer called BCDBUFF.
Registers used: No registers are modified.
Segments referenced: DATAS is data segment which contains BCDBUFF.
Routines called: STDIN
_______________________________________________________________________________
BCDOUT
Function: This routine converts a 36-digit number stored in BCD form to
ASCII decimal form which is sent to the standard output device.
Input: Upon entry a 36-digit number is stored in an 18-byte BCD buffer
called BCDBUFF.
Output: A string of ASCII digits representing a decimal number is stored
in a buffer called TBUFF and then sent out through a standard I/O routine.
Registers used: No registers are modified.
Segments referenced: DATAS is a data segment containing BCDFUFF and TBUFF.
Routines called: STDOUT
_______________________________________________________________________________
BCD2IB16
Function: This routine converts from internal BCD to intermal binary format.
Input: Upon entry a 36-digit number is contained in am 18-byte BCD buffer
called BCDBUFF.
Output: A 16-bit binary number is returned in the DX register.
Registers used: Only DX is modified. DX is used for output.
Segments referenced: DATAS is a data segment containing the buffer, BCDBUFF.
_______________________________________________________________________________
IB162BCD
Function: This routine converts internal 16-bit binary numbers to numbers
stored in internal BCD format.
Input: Upon entry a 16-bit binary number is in the DX register.
Output: On return a 36-digit number is stored in BCD form in an 18-byte
buffer called BCDBUFF.
Registers used: No registers are modified. DX is used for input.
Segments referenced: DATAS is a data segment containing BCDBUFF.
_______________________________________________________________________________
>>>> Physical EOF BCD.DOC <<<<<
December 5, 2017
Add comments