53
Floating Point To Signed Long (16-Bit) Integer Conversion
;Rev.1.0
;Function name - $fp_ftol
;
;Purpose - Convert a 24-bit signed floating representation
; of a number to an equivalent 16-bit signed integer
; representation.
;
;Registers used - Register Before After
; -------------------------------------------------------
; Status | XX | Modified
; A | XX | Signed integer MSB
; B | XX | Signed integer LSB
;
; R17 | OP1 exponent | OP1 exponent
; R18 | OP1 mantissa MSB | OP1 mantissa MSB
; R19 | OP1 mantissa LSB | OP1 mantissa LSB
;
;Size 56 bytes
;
;Stack space 1 byte
;
;Notes - 1) The fractional part of the float is discarded.
;
; 2) If the value of the integral part of the float cannot
; be represented by the signed long int, the behavior is
; undefined.
;
; 3) A float value of ZERO will be converted to 0.
expon .equ r17
fsign .dbit 7,r18
.global $fp_ftol
.text 7000h
$fp_ftol ;Floating point to long integer conversion.
btjo #80h,expon,$1 ;If exponent < 1, then number is too small.
clr a ;Set result = 0 and return.
clr b
rts
$1 cmp #8fh,expon ;Check for too big (>32767)
jhs big
mov r19,b
mov r18,a
or #80h,a ;Set the implied one
push expon ;Save true value of exponent.
sub #8fh,expon ;Exponent – 8Fh = # of shifts needed to
;represent
compl expon ;number as binary 15 digit number.
loop clrc
rrc a ;Rotate A and B as needed. Loop until implied 1
rrc b ;is in position.
djnz expon,loop
jbit0 fsign,pos ;Check for minus sign.
inv a ;Take the 2’s complement of integer to set
;sign.
compl b
adc #0,a
*
Summary of Contents for TMS370 Series
Page 1: ...TMS370 Microcontroller Family Application Book 1996 8 Bit Microcontroller Family ...
Page 2: ...Printed in U S A February 1996 SPNA017 ...
Page 3: ...1996 Application TMS370 Microcontroller Family Book ...
Page 20: ...1 Part I Introduction ...
Page 21: ...2 ...
Page 22: ...3 Introduction Microcontroller Products Semiconductor Group Texas Instruments ...
Page 23: ...4 ...
Page 25: ...6 ...
Page 27: ...8 ...
Page 29: ...10 ...
Page 31: ...12 ...
Page 33: ...14 ...
Page 37: ...18 ...
Page 39: ...20 ...
Page 41: ...22 ...
Page 43: ...24 ...
Page 45: ...26 ...
Page 47: ...28 ...
Page 49: ...30 ...
Page 81: ...62 ...
Page 82: ...63 Clear RAM Microcontroller Products Semiconductor Group Texas Instruments ...
Page 83: ...64 ...
Page 85: ...66 ...
Page 86: ...67 RAM Self Test on the TMS370 Microcontroller Products Semiconductor Group Texas Instruments ...
Page 87: ...68 ...
Page 89: ...70 ...
Page 90: ...71 ROM Checksum on the TMS370 Microcontroller Products Semiconductor Group Texas Instruments ...
Page 91: ...72 ...
Page 95: ...76 ...
Page 97: ...78 ...
Page 98: ...79 Bubble Sort With the TMS370 Microcontroller Products Semiconductor Group Texas Instruments ...
Page 99: ...80 ...
Page 101: ...82 ...
Page 103: ...84 ...
Page 105: ...86 ...
Page 109: ...90 ...
Page 115: ...96 ...
Page 117: ...98 ...
Page 119: ...100 ...
Page 121: ...102 ...
Page 125: ...106 ...
Page 127: ...108 ...
Page 207: ...188 ...
Page 209: ...190 ...
Page 211: ...192 ...
Page 213: ...194 ...
Page 219: ...200 ...
Page 221: ...202 ...
Page 313: ...294 ...
Page 315: ...296 ...
Page 319: ...300 ...
Page 323: ...304 ...
Page 324: ...305 T1PWM Set Up Routines Microcontroller Products Semiconductor Group Texas Instruments ...
Page 325: ...306 ...
Page 327: ...308 ...
Page 329: ...310 ...
Page 331: ...312 ...
Page 387: ...368 ...
Page 389: ...370 ...
Page 393: ...374 ...
Page 395: ...376 ...
Page 396: ...377 PACT Command Macros Microcontroller Products Semiconductor Group Texas Instruments ...
Page 397: ...378 ...
Page 403: ...384 ...
Page 405: ...386 ...
Page 459: ...440 ...
Page 461: ...442 ...
Page 467: ...448 ...
Page 469: ...450 ...
Page 471: ...452 ...
Page 475: ...456 ...
Page 477: ...458 ...
Page 479: ...460 ...
Page 483: ...464 ...
Page 485: ...466 ...
Page 487: ...468 ...
Page 491: ...472 ...
Page 492: ...473 Part V External Memory Expansion Examples ...
Page 493: ...474 ...
Page 495: ...476 ...
Page 497: ...478 ...
Page 499: ...480 ...
Page 513: ...494 ...
Page 515: ...496 ...
Page 521: ...502 ...
Page 523: ...504 ...
Page 525: ...506 ...
Page 545: ...526 ...
Page 547: ...528 ...