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

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

?? ifout.asm

?? 這是DOS系統的源代碼,匯編寫的,值得看看,對開發操作系統的人員有價值
?? ASM
字號:
	TITLE	IFOUT - Integer Free-format numeric output
;***
; IFOUT - Integer Free-format numeric output
;
;	Copyright <C> 1986, Microsoft Corporation
;
;Purpose:
;	Integer only versions of the routines in FOUT.ASM.  These routines
;	will call the floating point versions only if the floating point
;	versions have been linked in.  This prevents a print statement from
;	automatically pulling in the math pack.
;
;******************************************************************************
	INCLUDE switch.inc
	INCLUDE rmacros.inc

	USESEG _DATA
	USESEG _BSS
	USESEG MT_TEXT

	INCLUDE seg.inc
	INCLUDE rtps.inc


sBegin	_DATA


	externB B$AC		;Floating accumulator
sEnd	_DATA

sBegin	_BSS
	externB b$VTYP

	;NOTE: The buffer consists of b$SIGN, b$FOBUF, and BUFFER_END
	;NOTE: I.E. the buffer is 36 bytes long

	globalB b$SIGN,,1	;Sign of Value returned from B$CONASC
	globalB b$FOBUF,,34	;Numeric output buffer (integer + floating)
	staticB BUFFER_END,,1	;Last byte of buffer
sEnd	_BSS


sBegin	MT_TEXT
	assumes CS,MT_TEXT

	externNP B$ERR_FC


	externNP B$FloatFOUTBX	

;***
;B$IFOUT - Free-format numeric output (FAR interface)
;
;Purpose:
;	Format number for printing, using BASIC's formatting rules.
;Entry:
;	BX = ptr to Number to be formatted
;	AL = Val type - VT_I2, VT_I4, VT_R4, VT_R8 or VT_CY
;Exit:
;	BX = Address of ASCII string, terminated by 00
;	AX = Length of string (not including terminating 00)
;Uses:
;	Per convention. (DS, ES, SI, DI, BP preserved. PSW.D clear)
;Exceptions:
;	None
;****
cProc	B$IFOUT,<PUBLIC,FAR>,<BP>
cBegin
	MOV	[b$VTYP],AL
	cCall	B$FOUTBX	;call common fouter
cEnd


;***
;B$FOUTBX - Free-format numeric output
;
;Purpose:
;	Format number for printing, using BASIC's formatting rules.
;
;Entry:
;	BX = ptr to Number to be formatted
;	[b$VTYP] = VT_I2, or  VT_I4
;
;Exit:
;	BX = Address of ASCII string, terminated by 00
;	AX = Length of string (not including terminating 00)
;
;Uses:
;	Per convention.
;
;Exceptions:
;	B$ERR_FC if invalid b$VTYP.
;****

cProc	B$FOUTBX,<PUBLIC,NEAR>	;NOTE: Prolog doesn't put anything on stack
cBegin

	MOV	AX,[BX] 	;AX = low word of I4 or I2
	CWD			;Assume I2 (and convert to I4)
	CMP	b$VTYP,VT_I2	; Is it an I2
	JE	Got_Num 	;Yes, check if negative
	CMP	b$VTYP,VT_I4	; Is it an I4
	JNE	FloatingFoutBX	;No, pass it on to the floating point fout.
	MOV	DX,[BX+2]	;DX = High word of I4
Got_Num:
	XOR	BX,BX	;Get a Zero
	XCHG	AX,DX	;AX:DX = I4
	MOV	CL,' '	;Assume that number is positive
	AND	AX,AX	;Check for positive
	JGE	Positive	;It is!
	MOV	CL,'-'	;Flag it as a negative number
	NEG	DX	;And convert it to positive
	ADC	AX,BX	;Add in carry (BX = 0)
	NEG	AX
Positive:
	PUSH	SI	;Preserve original SI
	PUSH	CX	;Save Sign for later
	MOV	SI,OFFSET DGROUP:BUFFER_END
	MOV	BYTE PTR [SI],BL ;Zero Terminate the buffer.
	PUSH	SI	;Save this value for later
	MOV	CX,10	;Dividing by 10

Div_Loop:
	PUSH	DX	;Save Low part of I4
	XOR	DX,DX	;DX:AX = High Word of I4 (extended to 4 bytes)
	DIV	CX	;DX = Remainder, AX = Quotent
	POP	BX	;Restore Low part of I4
	XCHG	AX,BX	;DX:AX = Low Word of I4,  BX = High Quotent
	DIV	CX
	XCHG	AX,DX	;AX = Remainder of I4/10, BX:DX = Quotent of I4/10
	ADD	AL,"0"	;adjust for ASCII
	DEC	SI
	MOV	BYTE PTR [SI],AL
	MOV	AX,BX	;AX:DX = I4 again
	OR	BX,DX	;Are we done yet?
	JNZ	Div_Loop	;Nope, get next digit.
;
;Finish up
;

	POP	AX	;Restore starting point
	SUB	AX,SI	;AX = # digits
	POP	CX	;Restore Sign
	DEC	SI
	MOV	BYTE PTR [SI],CL;Put sign on number
	MOV	BX,SI	;BX = Start of string
	INC	AX	;Include sign in count
	POP	SI	;Restore original SI
cEnd

FloatingFoutBX:
	JMP	B$FloatFOUTBX	; Call the routine directly

;***
; B$ASCRND - Round ASCII digits
;
;Purpose:
;	Round number to the specified number of digits. Eliminate trailing
;	zeros from digit count.
;
;Inputs:
;	AL = Number of digits wanted
;	CX = Number of digits presently in number
;	DX = Base 10 exponent (D.P. to right of digits)
;	SI = Address of first digit
;
;Outputs:
;	CX = Number of digits now in number (always <= request)
;	DX = Base 10 exponent of rounded number
;	SI = Address of first digit of rounded number
;	DI = Address of formatting buffer, b$FOBUF
;
;Registers:
;	Only ES, BX, BP preserved.
;****
cProc	B$ASCRND,<NEAR,PUBLIC>,<ES>
cBegin

	PUSH	DS		;ES=DS
	POP	ES
	MOV	DI,SI
	CBW			;Zero AH (AL <= 18)
	ADD	DI,CX		;Point past last digit
	CMP	AX,CX		;Any extra digits?
	JAE	ZSCAN		;If not, no rounding
	XCHG	AX,CX		;Say we'll return number requested
	SUB	AX,CX		;See how many digits we're trimming
	ADD	DX,AX		;Increase exponent accordingly
	SUB	DI,AX		;Point to first extra digit
	MOV	AL,"0"
	XCHG	AL,[DI] 	;Get rounding digit and replace it with zero
	CMP	AL,"5"		;Do we need to round?
	JB	ZSCAN
	JCXZ	RNDALL
RND:
	DEC	DI		;Point to digit to round
	MOV	AL,[DI] 	;Get a digit that needs incrementing
	INC	AL
	CMP	AL,"9"+1	;Did we overflow this digit position?
	JB	STORND		;If not, store it and we're done
	INC	DX		;Otherwise exponent must be adjusted
	LOOP	RND		;We'll need to round next digit
RNDALL:
	INC	CX		;Must have at least one digit
	MOV	AL,"1"		;If we rounded all digits, must be to 1
STORND:
	STOSB			;Save rounded digit
ZSCAN:
;DI points just past the digits we want. Check for trailing zeros.
	DEC	DI		;Point to last digit
	MOV	AH,CL		;Remember how many digits we started with
	MOV	AL,"0"
	STD			;Scan DOWN
	REPE	SCASB		;Scan for "0"s
	CLD			;Restore direction UP
	INC	CX		;Number of digits left
	SUB	AH,CL		;Number of digits skipped
	ADD	DL,AH		;Increase base 10 exponent accordingly
	ADC	DH,0
	MOV	DI,OFFSET DGROUP:b$FOBUF
cEnd

sEnd	MT_TEXT
	END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产裸拍裸体视频在线观看乱了 | 国产一区二三区| 久久综合久色欧美综合狠狠| 国产一区二区在线视频| 1区2区3区国产精品| 4438亚洲最大| 99精品欧美一区二区蜜桃免费 | 亚洲免费av高清| 5858s免费视频成人| 成人久久视频在线观看| 亚洲午夜免费福利视频| 亚洲欧美日韩系列| 2020国产成人综合网| 色网综合在线观看| 国产传媒欧美日韩成人| 日本一区中文字幕 | 欧美精品一二三| 一本大道久久a久久综合| 激情五月激情综合网| 亚洲综合精品自拍| 亚洲精品乱码久久久久久久久 | 久久日韩粉嫩一区二区三区| 777午夜精品视频在线播放| 91在线精品一区二区| 国产成人综合视频| 国产精品中文字幕欧美| 国产成人aaa| 成人av在线电影| 97精品视频在线观看自产线路二 | 不卡的电视剧免费网站有什么| 日韩高清中文字幕一区| 亚洲国产sm捆绑调教视频| 一区二区三区四区中文字幕| 在线观看亚洲一区| 精品视频一区二区不卡| 99久久精品国产网站| 欧美一区三区二区| 一区二区三区加勒比av| 精品一区二区在线观看| 欧美亚洲高清一区二区三区不卡| www.99精品| 国产**成人网毛片九色 | 国内精品在线播放| 美腿丝袜亚洲综合| 激情亚洲综合在线| 国产高清在线观看免费不卡| 国产精品一二三在| 成人av在线一区二区| 色哟哟日韩精品| 欧美日韩另类一区| 日韩欧美一卡二卡| 国产精品日韩成人| 亚洲一区二区3| 美女看a上一区| 国产v综合v亚洲欧| 欧美性色综合网| 久久久天堂av| 日本中文字幕一区二区有限公司| 99精品国产99久久久久久白柏| 欧美美女bb生活片| 欧美三区在线观看| 久久精品水蜜桃av综合天堂| 日韩在线播放一区二区| 精品视频一区 二区 三区| 亚洲色图都市小说| 色视频一区二区| 综合色中文字幕| 色呦呦日韩精品| 亚洲一区二区视频在线| 欧美日韩中文另类| 一级女性全黄久久生活片免费| 成人黄色a**站在线观看| 综合婷婷亚洲小说| 色一情一伦一子一伦一区| 亚洲一区二区在线观看视频| 91理论电影在线观看| 亚欧色一区w666天堂| 欧美一区日本一区韩国一区| 免费看日韩a级影片| 久久综合九色欧美综合狠狠| 欧美唯美清纯偷拍| 欧美一卡在线观看| 性欧美疯狂xxxxbbbb| 国产精品久久久久四虎| 国产亚洲欧美一区在线观看| 欧美不卡一区二区| 精品国产一区a| 精品少妇一区二区| 在线观看亚洲精品视频| 蜜臀av一区二区在线免费观看| 亚洲人成小说网站色在线 | 欧美福利视频一区| 国产精品1区二区.| 久久精品国产亚洲一区二区三区| 最新国产の精品合集bt伙计| 精品女同一区二区| 欧美日韩国产电影| 一本色道亚洲精品aⅴ| 国产在线国偷精品免费看| 亚洲一区二区视频在线| 亚洲天天做日日做天天谢日日欢 | 夜夜亚洲天天久久| 中文字幕免费在线观看视频一区| 欧美肥妇bbw| 欧美日韩dvd在线观看| 欧美裸体bbwbbwbbw| 91精品中文字幕一区二区三区| 99国产精品国产精品久久| 激情六月婷婷综合| 国产真实乱子伦精品视频| 日本伊人精品一区二区三区观看方式| 天天综合网 天天综合色| 亚洲午夜在线观看视频在线| 日日摸夜夜添夜夜添精品视频 | 视频一区欧美精品| 日韩中文欧美在线| 国产一区在线精品| av一区二区三区黑人| 91视频在线观看免费| 欧美亚洲综合在线| 欧美一区二区免费视频| 欧美高清在线一区二区| 亚洲精品视频在线观看免费| 亚洲成人黄色影院| 国模少妇一区二区三区| 色综合 综合色| 日韩久久久久久| 综合自拍亚洲综合图不卡区| 五月天亚洲精品| 成人黄色国产精品网站大全在线免费观看 | 欧美一卡二卡在线| 亚洲精品国产高清久久伦理二区| 国产精品夜夜爽| 日韩亚洲国产中文字幕欧美| 亚洲国产欧美日韩另类综合| 91欧美一区二区| 亚洲自拍另类综合| 在线国产亚洲欧美| 亚洲不卡在线观看| 欧美最新大片在线看| 夜夜嗨av一区二区三区中文字幕 | 91在线你懂得| 久久精品免费在线观看| 自拍av一区二区三区| 天天综合色天天综合| 成人免费高清视频| 日韩一级片网站| 日韩高清一区二区| 欧美一区二区三区思思人| 亚洲免费观看高清完整版在线观看| 狠狠色综合日日| 欧美精品一区二区三区久久久 | 国内精品第一页| 久久综合国产精品| 蜜桃精品在线观看| 欧美一级日韩一级| 日韩av不卡在线观看| 日韩一二三四区| 国产在线精品一区在线观看麻豆| 精品国产制服丝袜高跟| 国产在线精品一区在线观看麻豆| 久久综合色一综合色88| 成人一区二区三区视频在线观看| 中文字幕av一区二区三区| 日本精品一区二区三区四区的功能| 一区二区在线观看视频| 欧美一区午夜视频在线观看| 国产福利91精品一区| 亚洲福利视频一区| 久久久久久久久久久久久女国产乱| 国产 日韩 欧美大片| 爽好多水快深点欧美视频| 精品国产自在久精品国产| 精品视频一区三区九区| 粉嫩av一区二区三区在线播放| 亚洲精品中文在线影院| 91精品欧美久久久久久动漫| 成人av在线一区二区| 美女视频黄频大全不卡视频在线播放 | 视频一区二区不卡| 亚洲国产精品二十页| 日韩欧美国产一区二区三区| 在线观看视频欧美| 粉嫩嫩av羞羞动漫久久久| 日韩成人午夜电影| 亚洲一区影音先锋| 玉米视频成人免费看| 中文字幕欧美日本乱码一线二线| 欧美久久久久久久久中文字幕| 不卡在线观看av| 成人精品视频一区二区三区 | 91免费国产在线| 国产成人aaa| 久久99精品国产麻豆婷婷 | 蜜臀99久久精品久久久久久软件| 亚洲精品欧美在线| 亚洲一区免费在线观看| 日日夜夜一区二区| 麻豆精品一区二区| 精彩视频一区二区|