亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? decbin.s

?? vxworks的完整的源代碼
?? S
?? 第 1 頁 / 共 2 頁
字號:
/* decbin.s - Motorola 68040 FP BCD/binary conversion routines (EXC) *//* Copyright 1991-1993 Wind River Systems, Inc. */	.data	.globl	_copyright_wind_river	.long	_copyright_wind_river/*modification history--------------------01e,21jul93,kdl  added .text (SPR #2372).01d,23aug92,jcf  changed bxxx to jxx.01c,26may92,rrr  the tree shuffle01b,10jan92,kdl  added modification history; general cleanup.01a,15aug91,kdl  original version, from Motorola FPSP v2.0.*//*DESCRIPTION	__x_decbinsa 3.3 12/19/90	Description: Converts normalized packed bcd value pointed to by	register A6 to extended-precision value in FP0.	Input: Normalized packed bcd value in	a6@(ETEMP).	Output:	Exact floating-point representation of the packed bcd value.	Saves and Modifies: D2-D5	Speed: The program __x_decbin takes ??? cycles to execute.	Object Size:	External Reference(s): None.	Algorithm:	Expected is a normal bcd (i.e. non-exceptional|  all inf, zero,	and NaN operands are dispatched without entering this routine)	value in 68881/882 format at location	A6@(ETEMP).	A1.	Convert the bcd exponent to binary by successive adds and muls.	Set the sign according to SE. Subtract 16 to compensate	for the mantissa which is to be interpreted as 17 integer	digits, rather than 1 integer and 16 fraction digits.	Note: this operation can never overflow.	A2. Convert the bcd mantissa to binary by successive	adds and muls in FP0. Set the sign according to SM.	The mantissa digits will be converted with the decimal point	assumed following the least-significant digit.	Note: this operation can never overflow.	A3. Count the number of leading/trailing zeros in the	bcd string.  If SE is positive, count the leading zeros|	if negative, count the trailing zeros.  Set the adjusted	exponent equal to the exponent from A1 and the zero count	added if SM = 1 and subtracted if SM = 0.  Scale the	mantissa the equivalent of forcing in the bcd value:	SM = 0	a non-zero digit in the integer position	SM = 1	a non-zero digit in Mant0, lsd of the fraction	this will insure that any value, regardless of its	representation (ex. 0.1E2, 1E1, 10E0, 100E-1), is converted	consistently.	A4. Calculate the factor 10^exp in FP1 using a table of	10^(2^n) values.  To reduce the error in forming factors	greater than 10^27, a directed rounding scheme is used with	tables rounded to RN, RM, and RP, according to the table	in the comments of the __x_pwrten section.	A5. Form the final binary number by scaling the mantissa by	the exponent factor.  This is done by multiplying the	mantissa in FP0 by the factor in FP1 if the adjusted	exponent sign is positive, and dividing FP0 by FP1 if	it is negative.	Clean up and return.  Check if the final mul or div resulted	in an inex2 exception.  If so, set inex1 in the fpsr and	check if the inex1 exception is enabled.  If so, set d7 upper	.word to 0x0100.  This will signal unimpsa that an enabled inex1	exception occured.  Unimp will fix the stack.		Copyright (C) Motorola, Inc. 1990			All Rights Reserved	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF MOTOROLA	The copyright notice above does not evidence any	actual or intended publication of such source code.DECBIN    idnt    2,1 Motorola 040 Floating Point Software Package	section	8NOMANUAL*/#include "fpsp040E.h"||	__x_PTENRN, __x_PTENRM, and __x_PTENRP are arrays of powers of 10 rounded|	to nearest, minus, and plus, respectively.  The tables include|	10**{1,2,4,8,16,32,64,128,256,512,1024,2048,4096}.  No rounding|	is required until the power is greater than 27, however, all|	tables include the first 5 for ease of indexing.||	xref	__x_PTENRN|	xref	__x_PTENRM|	xref	__x_PTENRPRTABLE:	.byte	0,0,0,0	.byte	2,3,2,3	.byte	2,3,3,2	.byte	3,2,2,3	.globl	__x_decbin	.globl	__x_calc_e	.globl	__x_pwrten	.globl	__x_calc_m	.globl	__x_norm	.globl	__x_ap_st_z	.globl	__x_ap_st_n|#define	FNIBS		7#define	FSTRT		0|#define	ESTRT		4#define	EDIGITS 	2|| Constants in single precisionFZERO: 	.long	0x00000000FONE: 	.long	0x3F800000FTEN: 	.long	0x41200000#define	TEN		10|	.text__x_decbin:	fmovel	#0,fpcr		| clr real fpcr	moveml	d2-d5,a7@-|| Calculate exponent:|  1. Copy bcd value in memory for use as a working copy.|  2. Calculate absolute value of exponent in d1 by mul and add.|  3. Correct for exponent sign.|  4. Subtract 16 to compensate for interpreting the mant as all integer digits.|     (i.e., all digits assumed left of the decimal point.)|| Register usage:||  __x_calc_e:|	(*)  d0: temp digit storage|	(*)  d1: accumulator for binary exponent|	(*)  d2: digit count|	(*)  d3: offset pointer|	( )  d4: first word of bcd|	( )  a0: pointer to working bcd value|	( )  a6: pointer to original bcd value|	(*)  FP_SCR1: working copy of original bcd value|	(*)  L_SCR1: copy of original exponent word|__x_calc_e:	movel	#EDIGITS,d2	| # of nibbles (digits) in fraction part	movel	#ESTRT,d3	| counter to pick up digits	lea	a6@(FP_SCR1),a0	| load tmp bcd storage address	movel	a6@(ETEMP),a0@	| save input bcd value	movel	a6@(ETEMP_HI),a0@(4) | save words 2 and 3	movel	a6@(ETEMP_LO),a0@(8) | and work with these	movel	a0@,d4		| get first word of bcd	clrl	d1		| zero d1 for accumulatore_gd:	mulul	#TEN,d1		| mul partial product by one digit place	bfextu	d4{d3:#4},d0	| get the digit and zero extend into d0	addl	d0,d1		| d1 = d1 + d0	addqb	#4,d3		| advance d3 to the next digit	dbf	d2,e_gd		| if we have used all 3 digits, exit loop	btst	#30,d4		| get SE	jeq 	e_pos		/* | don't negate if pos */	negl	d1		| negate before subtractinge_pos:	subl	#16,d1		| sub to compensate for shift of mant	jge 	e_save		| if still pos, do not neg	negl	d1		| now negative, make pos and set SE	orl	#0x40000000,d4	| set SE in d4,	orl	#0x40000000,a0@	| and in working bcde_save:	movel	d1,a6@(L_SCR1)	| save exp in memory||| Calculate mantissa:|  1. Calculate absolute value of mantissa in fp0 by mul and add.|  2. Correct for mantissa sign.|     (i.e., all digits assumed left of the decimal point.)|| Register usage:||  __x_calc_m:|	(*)  d0: temp digit storage|	(*)  d1: lword counter|	(*)  d2: digit count|	(*)  d3: offset pointer|	( )  d4: words 2 and 3 of bcd|	( )  a0: pointer to working bcd value|	( )  a6: pointer to original bcd value|	(*) fp0: mantissa accumulator|	( )  FP_SCR1: working copy of original bcd value|	( )  L_SCR1: copy of original exponent word|__x_calc_m:	moveql	#1,d1		| word counter, init to 1	fmoves	FZERO,fp0	| accumulator|||  Since the packed number has a long word between the first # second parts,|  get the integer digit then skip down # get the rest of the|  mantissa.  We will unroll the loop once.|	bfextu	a0@{#28:#4},d0	| integer part is ls digit in long word	faddb	d0,fp0		| add digit to sum in fp0|||  Get the rest of the mantissa.|loadlw:	movel	a0@(d1:l:4),d4	| load mantissa lonqword into d4	movel	#FSTRT,d3	| counter to pick up digits	movel	#FNIBS,d2	| reset number of digits per a0 ptrmd2b:	fmuls	FTEN,fp0	| fp0 = fp0 * 10	bfextu	d4{d3:#4},d0	| get the digit and zero extend	faddb	d0,fp0		| fp0 = fp0 + digit|||  If all the digits (8) in that long word have been converted (d2=0),|  then inc d1 (=2) to point to the next long word and reset d3 to 0|  to initialize the digit offset, and set d2 to 7 for the digit count||  else continue with this long word.|	addqb	#4,d3		| advance d3 to the next digit	dbf	d2,md2b		| check for last digit in this lwnextlw:	addql	#1,d1		| inc lw pointer in mantissa	cmpl	#2,d1		| test for last lw	jle 	loadlw		| if not, get last one||  Check the sign of the mant and make the value in fp0 the same sign.|m_sign:	btst	#31,a0@		| test sign of the mantissa	jeq 	__x_ap_st_z	| if clear, go to append/strip zeros	fnegx	fp0		| if set, negate fp0|| Append/strip zeros:||  For adjusted exponents which have an absolute value greater than 27*,|  this routine calculates the amount needed to normalize the mantissa|  for the adjusted exponent.  That number is subtracted from the exp

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费在线视频| 欧美精品久久久久久久多人混战| 亚洲美女一区二区三区| 日韩限制级电影在线观看| 成人国产精品免费网站| 免费精品99久久国产综合精品| 久久久久久久久久久久久女国产乱 | 国产女主播一区| 欧美日韩你懂的| 91啪亚洲精品| 国产精品一区二区免费不卡| 午夜精品一区二区三区免费视频| 国产精品毛片a∨一区二区三区 | 欧美激情在线免费观看| 日韩一本二本av| 欧美日韩亚洲另类| 91色视频在线| av爱爱亚洲一区| 国产91在线看| 日韩限制级电影在线观看| 一本久久精品一区二区| 成人国产精品免费网站| 国产一区二区不卡老阿姨| 日本中文字幕一区| 水蜜桃久久夜色精品一区的特点| 亚洲美女淫视频| 亚洲视频精选在线| 中文字幕免费不卡| 国产三级精品视频| 精品sm在线观看| 久久先锋资源网| 久久只精品国产| 欧美精品一区二区高清在线观看| 日韩一级大片在线| 91精品国产手机| 日韩一级高清毛片| 精品日韩一区二区| 精品福利一区二区三区 | 欧美精选一区二区| 欧美日韩综合一区| 欧美日韩视频在线观看一区二区三区| 一本久久精品一区二区| 色欧美88888久久久久久影院| 91丨国产丨九色丨pron| 99久久精品费精品国产一区二区| 99麻豆久久久国产精品免费| 91蜜桃在线免费视频| 99视频超级精品| 在线视频你懂得一区二区三区| 一本一道综合狠狠老| 91久久国产综合久久| 欧美性受极品xxxx喷水| 欧美精品第1页| 精品日韩99亚洲| 中文字幕精品一区| 亚洲婷婷国产精品电影人久久| 亚洲美女在线国产| 午夜精品视频在线观看| 精品中文av资源站在线观看| 国产美女一区二区| av激情综合网| 欧美日韩一区三区四区| 欧美一区二区免费观在线| 久久久久亚洲蜜桃| 亚洲视频在线一区观看| 亚洲国产日韩综合久久精品| 日韩高清不卡一区二区三区| 精品一区二区在线视频| 成人av网站免费观看| 欧美日韩黄视频| 欧美精品一区二区三区蜜臀| 国产精品传媒入口麻豆| 亚洲电影激情视频网站| 国模无码大尺度一区二区三区| gogogo免费视频观看亚洲一| 日本欧美韩国一区三区| 国产91综合网| 777xxx欧美| 一区精品在线播放| 亚洲国产欧美日韩另类综合| 国产曰批免费观看久久久| 色中色一区二区| 久久色在线观看| 亚洲午夜久久久久久久久久久 | 日韩电影在线一区二区三区| 国产精品99久久久久久有的能看| 91精品91久久久中77777| 日韩免费福利电影在线观看| 亚洲猫色日本管| 精品影视av免费| 在线观看免费视频综合| 精品99一区二区三区| 亚洲一区二区在线免费看| 国内国产精品久久| 欧美日韩视频在线第一区 | 首页综合国产亚洲丝袜| 国产剧情av麻豆香蕉精品| 欧美综合色免费| 国产精品欧美综合在线| 美国精品在线观看| 色天天综合色天天久久| 国产丝袜欧美中文另类| 久久精品久久综合| 欧美日韩亚洲不卡| 最新不卡av在线| 国产一区在线观看麻豆| 欧美精品第1页| 一级精品视频在线观看宜春院| 欧美色视频在线| 国产精品一区免费视频| 一本大道久久a久久综合| 久久久久久久久久久久久久久99 | 国产伦精品一区二区三区免费| 91污片在线观看| 中文在线免费一区三区高中清不卡| 日韩电影在线观看电影| 色婷婷综合久久久| 国产精品美女久久久久久| 国产精品综合二区| 精品久久久久久久久久久院品网| 婷婷国产v国产偷v亚洲高清| 日本乱码高清不卡字幕| 亚洲欧美日韩精品久久久久| 欧美成人精品福利| 蜜桃久久精品一区二区| 4438x亚洲最大成人网| 午夜影视日本亚洲欧洲精品| 色系网站成人免费| 亚洲欧美一区二区在线观看| 成人app软件下载大全免费| 亚洲国产精品传媒在线观看| 国产精品99久久久久久久女警 | 九九九久久久精品| 日韩美女在线视频| 精品制服美女丁香| 久久蜜桃香蕉精品一区二区三区| 免费xxxx性欧美18vr| 欧美一区永久视频免费观看| 三级成人在线视频| 欧美精品 国产精品| 日韩av电影天堂| 日韩午夜激情电影| 久久精品久久精品| 久久精品无码一区二区三区| 国产成人午夜精品5599| 欧美国产一区在线| 99久久精品国产毛片| 亚洲另类在线制服丝袜| 在线观看视频一区二区| 国产精品 欧美精品| 久久精品国产99| 欧美精品一区视频| 国产成人精品免费看| 中文字幕亚洲区| 色综合激情久久| 日韩精品一区第一页| 日韩一级片在线观看| 久久亚洲精品小早川怜子| 成人网在线免费视频| 中文字幕日韩av资源站| 欧美午夜在线一二页| 青青草国产精品97视觉盛宴| 国产香蕉久久精品综合网| 99视频在线精品| 亚洲aaa精品| 久久久久久久综合| 在线亚洲一区二区| 毛片一区二区三区| 中文字幕在线免费不卡| 欧美剧在线免费观看网站| 国内一区二区视频| 亚洲精选视频免费看| 91精品国产综合久久久久| 国产成人免费网站| 亚洲高清免费在线| 久久久影视传媒| 91国偷自产一区二区三区成为亚洲经典 | 香蕉久久一区二区不卡无毒影院| 欧美日韩国产一二三| 紧缚捆绑精品一区二区| 一色桃子久久精品亚洲| 欧美一区二区在线视频| 国产91综合一区在线观看| 亚洲国产一区二区在线播放| 亚洲精品一区二区三区蜜桃下载 | 麻豆精品一区二区av白丝在线| 国产欧美va欧美不卡在线| 欧美在线一二三| 国产福利一区二区三区视频| 亚洲精品中文在线观看| 精品国产一区二区三区四区四| 97久久超碰精品国产| 激情综合色播激情啊| 亚洲国产你懂的| 国产精品久线在线观看| 日韩午夜在线观看视频| 欧美曰成人黄网| 成人高清av在线| 激情五月激情综合网| 日韩精品成人一区二区三区|