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

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

?? q cir earth.asm

?? 用匯編語言實現的3d動畫
?? ASM
?? 第 1 頁 / 共 2 頁
字號:

		.386
		.model flat,stdcall
		option casemap:none
		
include		windows.inc
include		gdi32.inc
includelib	gdi32.lib
include		user32.inc
includelib	user32.lib
include		kernel32.inc
includelib	kernel32.lib

		.data?
hInstance	dd		?
hWinMain	dd		?
Table1		dd	326 dup(?)
Table2		dd	326 dup(?)
Rtable		dd	326 dup(?)
Table3		dd  326*256 dup(?)
hFile		dd		?
hFileMap	dd		?
lpFile		dd		?
lpMem		dd		?
lpMem1		dd		?
lpMem2		dd		?
lpMem3		dd		?
lpOffset	dd		?
mouX		dd		?
mouY		dd		?
moveJh		dd		?
Xscreen		dd		?
Yscreen		dd		?
frame		dd		?
hdc		dd		?
thjh		dd		?
buff		db	20 dup(?)
winRect		RECT		<?>

		.const
szClassName	db	'My 3D',0
BitMapAddr	db	'BitMap.bmp',0
over		db	'OVER',0
OpenError	db	'文件打開失敗(請您確定在當前目錄下有BitMap.bmp的位圖)',0dh,0ah
		db	'運行時請務必在此程序所在目錄中放一文件名為BitMap.bmp的地圖位圖',0

		.code
		

_arcsin		proc	bord,hypotenuse,lpResult;此模塊用來求arcsin值(qword ptr lpResult = arcsin(bord÷hypotenuse(bord≤hypotenuse) ) )
		local	a:qword;                        ___________
		local	b:qword;arcsin(x/y)=arctan(x/(√  y^2-x^2   ))
		push	ebx
		mov	dword ptr[b+4],0
		mov	eax,bord
		mul	eax
		mov	ebx,eax
		mov	ecx,edx
		mov	eax,hypotenuse
		mul	eax
		sub	eax,ebx
		sbb	edx,ecx
		mov	dword ptr a,eax
		mov	dword ptr[a+4],edx
		push	bord
		pop	dword ptr b
		finit
		fild	b
		fild	a
		fsqrt
		fpatan
		fst	a
		mov	ebx,lpResult
		mov	eax,ebx
		push	dword ptr a
		push	dword ptr[a+4]
		pop	dword ptr[ebx+4]
		pop	dword ptr[ebx]
		pop	ebx
		ret
_arcsin		endp

_arccos		proc	bord,hypotenuse,lpResult;此模塊用來求arccos值(qword ptr lpResult = arccos(bord÷hypotenuse(bord≤hypotenuse)))
		local	a:qword;                     __________
		local	b:qword;arccos(x/y)=arctan(√  y^2-x^2  /x ))
		push	ebx
		mov	dword ptr[b+4],0
		mov	eax,bord
		mul	eax
		mov	ebx,eax
		mov	ecx,edx
		mov	eax,hypotenuse
		mul	eax
		sub	eax,ebx
		sbb	edx,ecx
		mov	dword ptr a,eax
		mov	dword ptr[a+4],edx
		push	bord
		pop	dword ptr b
		finit
		fild	a
		fsqrt
		fild	b
		fpatan
		fst	a
		mov	ebx,lpResult
		mov	eax,ebx
		push	dword ptr a
		push	dword ptr[a+4]
		pop	dword ptr[ebx+4]
		pop	dword ptr[ebx]
		pop	ebx
		ret
_arccos		endp

_prop		proc	DesAddr,SourAddr,DesWidth,DesHeigth;此模塊用來對打開的位圖進行縮放
		LOCAL	@propx;(DesAddr:目的位圖首地址,SourAddr:源位圖首地址,
		LOCAL	@propy;DesWidth:目的位圖寬度,DesHeigth:目的位圖高度)
		LOCAL	@Null1
		LOCAL	@Null2
		LOCAL	@LS
		LOCAL	@SourWidth
		pushad
			mov	edi,DesAddr
			mov	esi,SourAddr
			mov	ecx,dword ptr[esi+10]
			cld
			rep	movsb
			mov	edi,DesAddr
			mov	esi,SourAddr
			push	DesWidth
			pop	dword ptr[edi+18]
			push	DesHeigth
			pop	dword ptr[edi+22]
			
			finit
			fild	dword ptr[esi+18]
			fild	dword ptr[edi+18]
			fdiv
			fst	@propx
			fild	dword ptr[esi+22]
			fild	dword ptr[edi+22]
			fdiv
			fst	@propy
			mov	eax,dword ptr[esi+18]
			mov	ebx,3
			mul	ebx
			and	eax,3h
			mov	ebx,4
			sub	ebx,eax
			cmp	ebx,4
			jne	@f
			mov	ebx,0
			@@:
			mov	@Null1,ebx
			mov	eax,dword ptr[edi+18]
			mov	ebx,3
			mul	ebx
			and	eax,3h
			mov	ebx,4
			sub	ebx,eax
			cmp	ebx,4
			jne	@f
			mov	ebx,0
			@@:
			mov	@Null2,ebx
			mov	eax,dword ptr[esi+18]
			mov	ebx,3
			mul	ebx
			add	eax,@Null1
			mov	@SourWidth,eax
			mov	eax,DesWidth
			mul	ebx
			add	eax,@Null2
			mov	ebx,DesHeigth
			mul	ebx
			add	eax,dword ptr[edi+10]
			mov	dword ptr[edi+2],eax
			add	esi,dword ptr[esi+10]
			mov	SourAddr,esi
			add	edi,dword ptr[edi+10]
			mov	ecx,0
			Hlp:
			push	ecx
			mov	@LS,ecx
			finit
			fild	@LS
			fld	@propy
			fmul
			fist	@LS
			mov	eax,@LS
			mov	ebx,@SourWidth
			mul	ebx
			mov	esi,SourAddr
			add	esi,eax
			mov	ecx,0
			mov	ebx,3
			@@:
			mov	@LS,ecx
			finit
			fild	@LS
			fld	@propx
			fmul
			fist	@LS
			mov	eax,@LS
			mul	ebx
			add	eax,esi
			mov	eax,dword ptr[eax]
			mov	dword ptr[edi],eax
			add	edi,3
			inc	ecx
			cmp	ecx,DesWidth
			jne	@b
			add	edi,@Null2
			pop	ecx
			inc	ecx
			cmp	ecx,DesHeigth
			jne	Hlp
		popad
			ret

_prop endp
		
_initTable	proc;此模塊用來對程序中要重復計算的數據寫入表中,運行時直接查找卻可,降低CPU占用率
		local	@arc:qword
		local	@ls
		local	@ls1
		local	@ls2
		local	@R
		;-----------------------------------------------------------------
		;↓提取水平掃描線下方(256線變為163線),163=(256/π)*2
		;-----------------------------------------------------------------
		mov	@ls,163
		mov	ebx,163
		lea	edi,Table1
		@@:
		invoke	_arccos,ebx,163,addr @arc
		finit
		fld	@arc
		fimul	@ls
		fist	@ls1
		mov	eax,@ls1
		mov	ecx,512*3
		mul	ecx
		mov	dword ptr[edi],eax
		add	edi,4
		dec	ebx
		jnz	@b
		;------------------------------------------------------------------
		;↓提取水平掃描線上方(256線變為163線)
		;------------------------------------------------------------------
		@@:
		invoke	_arcsin,ebx,163,addr @arc
		finit
		fld	@arc
		fimul	@ls
		fist	@ls1
		mov	eax,@ls1
		mov	ecx,512*3
		mul	ecx
		add	eax,512*256*3
		mov	dword ptr[edi],eax
		add	edi,4
		inc	ebx
		cmp	ebx,163
		jne	@b
		;------------------------------------------------------------------
		;↓提取垂直線左163線
		;------------------------------------------------------------------
		lea	edi,Table2
		mov	ebx,163
		@@:
		invoke	_arccos,ebx,163,addr @arc
		finit
		fld	@arc
		fimul	@ls
		fist	@ls1
		mov	eax,@ls1
		mov	ecx,3
		mul	ecx
		mov	dword ptr[edi],eax
		add	edi,4
		dec	ebx
		jnz	@b
		;-----------------------------------------------------------
		;↓提取垂直線右163線
		;-----------------------------------------------------------
		@@:
		invoke	_arcsin,ebx,163,addr @arc
		finit
		fld	@arc
		fimul	@ls
		fist	@ls1
		mov	eax,@ls1
		mov	ecx,3
		mul	ecx
		add	eax,256*3
		mov	dword ptr[edi],eax
		add	edi,4
		inc	ebx
		cmp	ebx,163
		jne	@b
		;-----------------------------------------------------------
		;↓設置下163線每條水平線的寬度(此寬度為實際的1/2)
		;-----------------------------------------------------------
		lea	edi,Rtable
		mov	ecx,163
		@@:
		mov	eax,ecx
		mul	ecx
		mov	ebx,163*163
		sub	ebx,eax
		mov	@R,ebx
		finit
		fild	@R
		fsqrt
		fist	@R
		mov	eax,@R
		mov	dword ptr[edi],eax
		add	edi,4
		dec	ecx
		jnz	@b
		;-----------------------------------------------------------
		;↓設置上163線每條水平線的寬度(此寬度為實際的1/2)
		;-----------------------------------------------------------
		@@:
		mov	eax,ecx
		mul	ecx
		mov	ebx,163*163
		sub	ebx,eax
		mov	@R,ebx
		finit
		fild	@R
		fsqrt
		fist	@R
		mov	eax,@R
		mov	dword ptr[edi],eax
		add	edi,4
		inc	ecx
		cmp	ecx,163
		jne	@b
		;-----------------------------------------------------------
		;↓提取左垂直線163線轉每條球體水平線的寬度
		;-----------------------------------------------------------
		lea	esi,Rtable
		lea	edi,Table3
		mov	ecx,163
		@@:
		push	ecx
		cmp	dword ptr[esi],0
		jz	lop
		finit
		fild	@ls
		fidiv	dword ptr[esi]
		fst	@R
		mov	eax,dword ptr[esi]
		shl	eax,1
		mov	@ls2,eax
		mov	ecx,0
		lop1:
		mov	@ls1,ecx
		finit
		fld	@R
		fimul	@ls1
		fist	@ls1
		mov	eax,@ls1
		mov	ebx,3
		mul	ebx
		mov	dword ptr[edi],eax
		add	edi,4
		inc	ecx
		cmp	ecx,@ls2
		jne	lop1
		lop:
		add	esi,4
		pop	ecx
		dec	ecx
		jnz	@b
		;-----------------------------------------------------------
		;↓提取右垂直線163線轉每條球體水平線的寬度
		;-----------------------------------------------------------
		lea	esi,Rtable
		add	esi,163*4
		mov	ecx,163
		@@:
		push	ecx
		cmp	dword ptr[esi],0
		jz	lop2
		finit
		fild	@ls
		fidiv	dword ptr[esi]
		fst	@R
		mov	eax,dword ptr[esi]
		shl	eax,1
		mov	@ls2,eax
		mov	ecx,0
		lop3:
		mov	@ls1,ecx
		finit
		fld	@R
		fimul	@ls1
		fist	@ls1
		mov	eax,@ls1
		mov	ebx,3
		mul	ebx
		mov	dword ptr[edi],eax
		add	edi,4
		inc	ecx
		cmp	ecx,@ls2
		jne	lop3

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一级做a爱片久久| 秋霞午夜av一区二区三区| 国产精品国产三级国产aⅴ原创| 欧美激情一区二区三区蜜桃视频| 国产精品国产三级国产专播品爱网 | 精品一区二区久久久| 丁香婷婷综合激情五月色| 成人99免费视频| 欧美日韩一区三区| 精品国产一区二区精华 | 国产乱国产乱300精品| av成人免费在线观看| 欧美日韩日日摸| 久久精品人人做人人爽97| 亚洲激情图片一区| 国内精品嫩模私拍在线| 91搞黄在线观看| 欧美精品一区男女天堂| 亚洲欧洲无码一区二区三区| 日韩电影在线观看网站| av中文一区二区三区| 欧美成人a∨高清免费观看| 中文字幕中文字幕一区二区| 日韩福利电影在线观看| www.成人在线| 欧美成人性战久久| 亚洲国产va精品久久久不卡综合| 国产91精品一区二区麻豆网站| 欧美日韩久久一区二区| 国产欧美1区2区3区| 日本麻豆一区二区三区视频| 韩日av一区二区| 91精品欧美综合在线观看最新| 亚洲欧洲一区二区在线播放| 国产又粗又猛又爽又黄91精品| 欧美日韩日本视频| 樱桃国产成人精品视频| 日韩二区三区在线观看| 欧美色图第一页| 一区二区三区加勒比av| 99re这里只有精品首页| 欧美韩国日本综合| 国产麻豆午夜三级精品| 日韩你懂的在线观看| 亚洲五码中文字幕| 欧美日韩不卡一区二区| 亚洲制服丝袜一区| 色久优优欧美色久优优| 亚洲精品欧美二区三区中文字幕| 丁香激情综合五月| 欧美激情一区二区在线| 国产99久久久久| 久久久久国产精品厨房| 国产成人免费视| 亚洲国产精品成人综合色在线婷婷 | 日韩一区二区免费高清| 亚洲精品欧美激情| 欧美色老头old∨ideo| 午夜精品福利在线| 91精品啪在线观看国产60岁| 日韩和欧美一区二区| 欧美一二三区在线| 日本不卡视频一二三区| 制服.丝袜.亚洲.中文.综合| 日韩成人午夜电影| 久久综合九色综合97婷婷女人| 成人va在线观看| 天堂精品中文字幕在线| 欧美一区二区三区公司| 国产一区二区三区综合| 国产精品入口麻豆原神| 91亚洲精品久久久蜜桃网站| 亚洲国产乱码最新视频| 欧美一二三区在线| 国产99久久久国产精品免费看| 国产精品欧美久久久久无广告| 99久久精品国产一区| 亚洲国产婷婷综合在线精品| 91精品中文字幕一区二区三区| 免费在线观看精品| 国产欧美一区二区三区鸳鸯浴| 久久精品久久久精品美女| 国产精品日韩成人| 欧美日韩在线观看一区二区| 毛片av中文字幕一区二区| 精品粉嫩超白一线天av| 97se亚洲国产综合自在线观| 亚洲成人免费在线观看| 久久久综合精品| 色婷婷国产精品综合在线观看| 手机精品视频在线观看| 久久精品视频免费| 欧美日韩亚洲国产综合| 国产一区二区精品在线观看| 一区二区三区视频在线看| 91精品国产综合久久久久| 国产传媒日韩欧美成人| 天天色天天爱天天射综合| 久久伊人中文字幕| 欧美日韩国产影片| 成人做爰69片免费看网站| 亚洲一区二区精品3399| 久久这里只有精品首页| 在线观看日产精品| 国产91富婆露脸刺激对白| 天堂一区二区在线免费观看| 国产女人水真多18毛片18精品视频| 欧美羞羞免费网站| 国产91综合一区在线观看| 日韩vs国产vs欧美| 亚洲人快播电影网| 国产片一区二区三区| 91精品国产91久久综合桃花 | 欧美va天堂va视频va在线| 一本到三区不卡视频| 国产一区欧美一区| 蜜臀av一区二区在线免费观看| 亚洲色图制服丝袜| 久久久久亚洲综合| 欧美日韩电影在线播放| 91啪亚洲精品| 成人一区二区在线观看| 国内精品免费在线观看| 男人的天堂久久精品| 亚洲二区在线视频| 玉米视频成人免费看| 国产精品亲子伦对白| 中文子幕无线码一区tr| 国产精品成人免费| 一级做a爱片久久| 日本视频一区二区三区| 久久精品av麻豆的观看方式| 国内外成人在线视频| 国产91精品免费| 色哟哟国产精品免费观看| 在线一区二区三区做爰视频网站| 欧美三级欧美一级| 日韩视频免费观看高清在线视频| 久久综合久久久久88| 国产色综合久久| 欧美激情一区二区三区蜜桃视频| 国产清纯美女被跳蛋高潮一区二区久久w | 国产欧美中文在线| 国产精品无遮挡| 日本一区二区成人| 国产精品福利影院| 亚洲精品美国一| 97精品久久久午夜一区二区三区 | 欧美国产日韩在线观看| 亚洲精品va在线观看| 美腿丝袜在线亚洲一区| 国产成人精品在线看| 91福利精品第一导航| 日韩视频在线你懂得| 国产精品国产三级国产有无不卡| 亚洲一二三四在线观看| 国产一区二区三区久久久| 99久久er热在这里只有精品15 | 亚洲免费伊人电影| 蜜臀av性久久久久蜜臀av麻豆| 成人爱爱电影网址| 欧美高清视频不卡网| 日本一二三不卡| 日本三级亚洲精品| 97se亚洲国产综合自在线观| 欧美成人精品1314www| 日韩毛片在线免费观看| 激情五月播播久久久精品| 欧美艳星brazzers| 国产精品色在线| 蜜桃av噜噜一区| 在线观看成人小视频| 久久精品在线观看| 热久久国产精品| 在线免费精品视频| 亚洲国产激情av| 蜜臀精品一区二区三区在线观看 | 亚洲午夜精品在线| 成人美女在线视频| 久久综合99re88久久爱| 婷婷综合久久一区二区三区| 91在线小视频| 欧美国产日韩亚洲一区| 狂野欧美性猛交blacked| 在线观看av不卡| 亚洲日本在线视频观看| 国产91色综合久久免费分享| 精品日产卡一卡二卡麻豆| 丝袜诱惑制服诱惑色一区在线观看| av电影天堂一区二区在线| 国产欧美一区二区精品婷婷| 麻豆国产精品777777在线| 欧美日韩一区中文字幕| 亚洲国产综合色| 欧美亚洲国产bt| 久99久精品视频免费观看| 欧美视频在线一区| 亚洲自拍都市欧美小说| 91伊人久久大香线蕉| 国产精品久久久久一区二区三区共|