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

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

?? dividing.asm

?? 浮點除法子程序,可以高效率計算浮點浮點除法,程序短小精干,非常討巧
?? ASM
字號:

;.global BCDDiv

.CSEG

main:

	ldi r28, low(0x02FF -1)
	ldi r29, high(0x02FF -1)
	out 0x3e, r29
	out 0x3d, r28	;set stack pointer
	
	ldi	r30,low(BCDDivisor)
	ldi r31,high(BCDDivisor)
	
	ldi	r28,low(BDCDivdend)
	ldi r29,high(BDCDivdend)
	
	ldi	r26,low(BCDResult)
	ldi r27,high(BCDResult)	
	
	rcall BCDDiv		                       

/*function: two BCD digitall Div.  [R27,R26]=[R29,R28]/[31,30] */
BCDDiv:

    movw    r24,r26
    ldi     r26,low(BCDDivdendBuffer)
    ldi     r27,high(BCDDivdendBuffer)
    
    eor		r23,r23		/*a ZERO needed*/
    st		X+,r23		/*set first byte of BCDDivdendBuffer as ZERO*/

    ldi     r21,(BCDigitalWidth+1)



skipZeroDividend:
    dec r21
    breq    ZeroDividend
    ld  r22,Y+
    cpi r22,0
    breq skipZeroDividend
    ldi r20,BCDigitalWidth
    sub r20,r21
    lsl r20
    mov r23,r22
    andi    r23,0xf0
    brne    noSkipHighDividend
    inc     r20
    rjmp    SkipHighDividend

DividendcopyLoop:
    mov r23,r22
    andi    r23,0xf0
noSkipHighDividend:    
    swap    r23
    st      X+,r23
SkipHighDividend:    
    andi    r22,0x0f
    st      X+,r22
    
    dec r21
    breq    DividendCopyFinished    
    ld  r22,Y+
    rjmp    DividendcopyLoop
    
ZeroDividend:

    /*Dividend is zero. return zero here.*/    

    
DividendCopyFinished:
    ldi	r21,(BCDDivdendBufferSize-BCDigitalWidth*2)
    add	r21,r20
    eor	r23,r23		/*a ZERO needed*/
FillDividendBufferWithZero:
    dec r21
    breq FillDividendFinished
    st X+,r23		/*Set as ZERO*/
    rjmp FillDividendBufferWithZero
FillDividendFinished:
    
LoadDivisor:
    
    ldi    r26,low(BCDDivisorBuffer)
    ldi    r27,high(BCDDivisorBuffer)
    eor		r23,r23		/*a ZERO needed*/
    st		X+,r23		/*set first byte of BCDDivdendBuffer as ZERO*/    
    ldi    r21,(BCDigitalWidth+1)
    
skipZeroDivisor:
    dec r21
    breq    ZeroDivisor
    ld  r22,Z+
    cpi r22,0
    breq skipZeroDivisor
    ldi r28,BCDigitalWidth
    sub r28,r21
    lsl r28
    mov r23,r22
    andi    r23,0xf0
    brne    noSkipHighDivisor
    inc     r28
    rjmp    SkipHighDivisor

DivisorcopyLoop:
    mov r23,r22
    andi    r23,0xf0
noSkipHighDivisor:    
    swap    r23
    st      X+,r23
SkipHighDivisor:    
    andi    r22,0x0f
    st      X+,r22
    
    dec r21
    breq    DivisorCopyFinished    
    ld  r22,Z+
    rjmp    DivisorcopyLoop    

ZeroDivisor:
    /*Divisor is zero.....*/
    
DivisorCopyFinished:
	ldi	r21,(BCDDivisorBufferSize-BCDigitalWidth*2)
	add	r21,r28
	eor	r23,r23		/*a ZERO needed*/
FillDivisorBufferWithZero:
	dec r21
	breq FillDivisorFinished
    st X+,r23		/*Set as ZERO*/
    rjmp FillDivisorBufferWithZero
    
FillDivisorFinished:	
	
    ldi	r21,(BCDDivisorBufferSize-1)
    
DivisorNotTailZeroCountLoop:
    ld r23,-X
    cpi r23,0
    brne	f1
    dec r21
    brne DivisorNotTailZeroCountLoop
    
/*r21: length of Divisor, without 0 in tail*/
/*r20: Shift of Dividend*/	
/*r28: Shift of Diivisor*/
/*an absolute shift is gotten by r20-r28*/
f1:
    sub r20,r28
/*we release r28 here,by reserve the absolute shift only*/



/*Do DIV:*/

	

	movw	r26,r24
	
	
	
	
	eor r24,r24    /* r24:Result Index, 0 ~ (BCDigitalWidth)*2 */

    eor	r22,r22    /*a ZERO needed*/

    ldi	r30,low(BCDDivisorBuffer)
    ldi r31,high(BCDDivisorBuffer)	/* Z=&BCDDivisorBuffer */	
		
    ldi	r28,low(BCDDivdendBuffer)
    ldi r29,high(BCDDivdendBuffer)
    
    inc	r21
    
TwoDigitalProcess:

	eor	r19,r19
NumberSubLoop:    


    add r30,r21
    adc r31,r22						/* Z = &BCDDivisorBuffer + r21 */
    
    add	r28,r21
    adc	r29,r22
    
    
    mov	r18,r21
    clc

DigitalSubLoop:            
    ld	r25,-Z
    ld	r23,-Y    
    
    sbc r23,r25
    brcc noBorrow
    ldi	r25,10
    add	r23,r25
    sec
noBorrow:    
    st	Y,r23
    
    dec r18
    brne	DigitalSubLoop
    
    inc	r19
    
    brcc	NumberSubLoop
    
    adiw	r28,1
    inc r24    

    
/*Prepare environment for adding*/

    eor	r17,r17    
NumberAddLoop:

    mov	r18,r21


    add r30,r21
    adc r31,r22	/*a ZERO */				/* Z = &BCDDivisorBuffer + r21 */
    
    add	r28,r21
    adc	r29,r22	/*a ZERO*/
	    

    clc

DigitalAddLoop:
    ld	r25,-Z
    ld	r23,-Y
    
    adc r23,r25
    cpi	r23,10
    brlo noCarry
    ldi	r25,10
    sub	r23,r25
    sec
    rjmp saveResult
noCarry:
    clc		/*Carry Flag has been changed by cpi instruction*/
saveResult:    
	st	Y,r23
	dec	r18
	brne DigitalAddLoop
	inc r17
	
	brcc	NumberAddLoop
	
	adiw	r28,1

	dec	r19
	ldi	r25,10
	sub	r25,r17
	swap r19
	add	r19,r25
	st	X+,r19	

	inc	r24
	
	cpi	r24,((BCDigitalWidth)*2)
	
	brne TwoDigitalProcess

    ret    
    
    
;;    .data
.DSEG  

nothing: .byte   0x100 

.set    BCDigitalWidth = 5
.set    BCDDivdendBufferSize=((BCDigitalWidth)*4+1)
.set    BCDDivisorBufferSize=((BCDigitalWidth)*2+1)


BCDDivdendBuffer: .byte   BCDDivdendBufferSize 
BCDDivisorBuffer: .byte   BCDDivisorBufferSize

BDCDivdend:	.db  0x98,0x76,0x54,0x32,0x10
BCDDivisor:	.db  0x12,0x23,0x56,0x00,0x00

BCDResult:  .byte BCDigitalWidth

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品欧美一区二区三区综合在| 亚洲国产精品久久艾草纯爱| 亚洲欧洲www| 日韩制服丝袜av| 91年精品国产| 久久免费精品国产久精品久久久久| 亚洲精品欧美专区| 国产福利一区二区三区视频在线| 欧美日韩精品一区二区三区| 一区在线观看免费| 国产成人av电影在线观看| 欧美日韩一级二级| 亚洲欧美色综合| 成人sese在线| 久久久久国产精品厨房| 91丨porny丨户外露出| 国产精品理论在线观看| 欧美精品久久久久久久多人混战| 一区二区免费看| 日韩女优av电影在线观看| 成年人网站91| 久久精品国产在热久久| 尤物视频一区二区| 久久伊人中文字幕| 欧美大胆一级视频| 久久免费的精品国产v∧| 91小视频免费观看| 中文字幕五月欧美| 91福利国产成人精品照片| 蜜桃视频一区二区| 日韩一区有码在线| 中文字幕中文在线不卡住| av男人天堂一区| 欧美在线一二三四区| 97久久人人超碰| 午夜精品福利一区二区三区av| 成人教育av在线| 国产乱码精品一品二品| 精品国精品自拍自在线| 久久99精品久久只有精品| 日韩美女一区二区三区四区| 日韩国产欧美在线观看| 欧洲视频一区二区| 亚洲人成影院在线观看| 91行情网站电视在线观看高清版| 亚洲欧美偷拍三级| 欧美精三区欧美精三区| 蜜桃视频第一区免费观看| 久久综合久久综合九色| 福利电影一区二区| 亚洲成人免费在线观看| 国产美女娇喘av呻吟久久| 日韩中文字幕亚洲一区二区va在线| 亚洲va欧美va国产va天堂影院| 亚洲人成网站色在线观看| 欧美激情一二三区| 亚洲色图20p| 国产视频一区在线播放| 精品国产乱码久久久久久老虎| 成人免费高清在线| 亚洲精品一区二区三区蜜桃下载| 亚洲国产成人va在线观看天堂| 国产乱码精品一区二区三区忘忧草| 一道本成人在线| 琪琪久久久久日韩精品| 亚洲欧美综合色| 国产麻豆成人精品| 欧美性生交片4| 欧美一级爆毛片| 制服丝袜在线91| 亚洲精品中文字幕在线观看| 国产尤物一区二区在线| 蜜桃av噜噜一区| 日韩一区二区精品在线观看| 亚洲一区二区三区激情| 懂色一区二区三区免费观看| 欧美精品粉嫩高潮一区二区| 亚洲欧洲成人自拍| 欧美三级电影一区| 亚洲韩国一区二区三区| 欧美一区二区三区视频在线观看 | 94-欧美-setu| 欧美激情一区在线观看| 午夜精品久久久久久久久久| 国产精品影视在线观看| 欧美私模裸体表演在线观看| 综合婷婷亚洲小说| 国产九九视频一区二区三区| 3751色影院一区二区三区| 亚洲国产日韩精品| 在线一区二区视频| 一区二区三区 在线观看视频| 99视频精品全部免费在线| 精品久久免费看| 奇米精品一区二区三区在线观看一| 99国产精品久| 亚洲大片在线观看| 91欧美一区二区| 国产精品久久午夜夜伦鲁鲁| 久久久久久久久久久久电影| 国产a久久麻豆| 亚洲激情第一区| 日韩三级.com| 99精品视频一区| ㊣最新国产の精品bt伙计久久| 日韩一区二区三区四区五区六区| av午夜精品一区二区三区| 亚洲r级在线视频| 久久亚洲捆绑美女| 日韩欧美一区二区久久婷婷| 欧美日本一区二区在线观看| 99精品视频在线免费观看| 成人在线一区二区三区| 成人深夜在线观看| 成人小视频在线观看| 精品系列免费在线观看| 亚洲大片在线观看| 亚洲一区二区综合| 亚洲综合免费观看高清完整版在线| 亚洲男人的天堂在线观看| 一区二区三区欧美久久| 夜夜精品浪潮av一区二区三区| 中文字幕精品在线不卡| 亚洲天堂免费看| 伊人性伊人情综合网| 午夜电影网一区| 激情图片小说一区| 成人一区二区三区中文字幕| 国产成人av电影在线观看| caoporm超碰国产精品| 色综合久久久久久久久久久| 欧美视频三区在线播放| 日韩午夜av一区| 久久免费美女视频| 中文字幕日韩精品一区| 亚洲成人av一区| 国产一区二区三区四区五区美女 | 国产91精品精华液一区二区三区| 高清日韩电视剧大全免费| 一本色道a无线码一区v| 在线观看三级视频欧美| 欧美一区2区视频在线观看| 欧美变态口味重另类| 国产精品久线观看视频| 亚洲一区欧美一区| 国内精品视频一区二区三区八戒 | 色婷婷综合久久久| 91精品国产欧美一区二区成人| 精品成人在线观看| 亚洲欧美激情视频在线观看一区二区三区 | 亚洲自拍另类综合| 久久精品国产亚洲高清剧情介绍 | 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 尤物av一区二区| 黑人巨大精品欧美一区| 91视频在线看| 日韩欧美激情四射| 亚洲免费伊人电影| 韩国三级在线一区| 欧美日韩一区精品| 国产精品视频线看| 免费在线观看日韩欧美| 91麻豆国产福利精品| 精品国产麻豆免费人成网站| 亚洲美女淫视频| 国产成人99久久亚洲综合精品| 777奇米成人网| 亚洲精品视频在线观看免费 | 欧美欧美欧美欧美| 亚洲视频在线一区| 国内精品久久久久影院薰衣草| 欧美综合天天夜夜久久| 亚洲国产精品高清| 蜜乳av一区二区| 欧美老女人第四色| 亚洲一区精品在线| 国产另类ts人妖一区二区| 欧美日韩高清在线播放| 亚洲另类春色国产| av在线综合网| 国产日韩欧美激情| 国产毛片精品国产一区二区三区| 91精品国产一区二区三区香蕉| 一区二区视频在线| 色综合视频在线观看| 中文字幕欧美区| 国产v日产∨综合v精品视频| 日韩午夜在线播放| 久草热8精品视频在线观看| 91精品国产综合久久小美女| 亚洲国产视频一区二区| 在线观看区一区二| 一区二区三区高清| 91高清视频在线| 亚洲自拍都市欧美小说| 欧美日韩成人在线一区| 亚洲福中文字幕伊人影院| 欧美探花视频资源| 七七婷婷婷婷精品国产| 欧美中文字幕久久|