汇编语言课程设计粒子运动动画报告(编辑修改稿)内容摘要:
垂直方向上的越界检查(也做回绕处理) movsx edx, [ebx]. .if edx SDWORD PTR 0 mov edx, yClient dec edx mov [ebx]., dx .elseif edx = yClient mov edx, 0 mov [ebx]., dx .endif。 绘制当前状态(向 @hDc 设备绘制一点) movzx eax, [ebx]. movzx edx, [ebx]. .if view != 3 invoke SetPixel,hdcT,eax,edx,[ebx]. .endif add ebx, sizeof ATOMST dec _k .endw pop ecx inc ecx .endw 此程序是利用如 .if eax SDWORD PTR 0 类的条件语句规定程序的执行范围,使种子图像始终在窗口内来回不同轨迹的游走。 (1)绘制路线子程序 此程序用于绘制粒子运动的不同轨迹,在不同的时间使其粒子想不通的方向产生运动轨迹。 绘制整条直线及用算法实现范围的计算,分别定义长和宽为_x,_xx, _y,_yy,利用坐标思维 _xx_x,_yy_y来实现场合矿的计算。 利用坐标点绘制直线来实现横向和竖向的运动轨迹。 效果如下图所示: 横向路线轨迹分解: 图 33 颜色变换一 图 3— 1轨迹分解图 代码如下:。 绘制直线 drawLine proc uses ebx esi edi, _x:SWORD, _y:SWORD, _xx:SWORD, _yy:SWORD, _color:DWORD LOCAL incx:SDWORD, incy:SDWORD mov eax, movzx ecx, _y sub eax, ecx dec eax imul eax, movzx edx, _x shl edx, 2 add eax, edx mov edi, mTemp add edi, eax。 计算两个方向的画线距离 movzx eax, _xx movzx edx, _x sub eax, edx。 dx = xx x movzx edx, _y movzx ecx, _yy sub edx, ecx。 dy = yy y。 计算两个方向的步长 mov ebx, 4 .if (eax SDWORD PTR 0) neg ebx neg eax .elseif !eax mov ebx, eax .endif mov incx, ebx mov ecx, .if (edx SDWORD PTR 0) neg ecx neg edx .elseif !edx mov ecx, edx .endif mov incy, ecx mov ebx, _color。 绘制整条直线 .while ecx mov [edi], ebx add esi, eax add edi, incy .if esi = SDWORD PTR 0 add edi, incx sub esi, edx .endif dec ecx .endw .endif。 mov [edi], ebx ret drawLine endp (2) 随机数发生器子程序 此程序用于产生随机数,对应种子时间内的路径。 (4) 弱化内存设备数据区像素的颜色子程序 此程序用于 弱化内存设备数据区像素的颜色 ,使其背景显示纯色。 (5)其他功能子程序 选取背景颜色程序子程序,获取对话框中指定编辑框的整数设置子程序,对话框中指定编辑框的初始值保存位图文件选择框子程序,获取有效的全路径文件名子程序,将内存设备位图写到文件系统参数设置对话框过程子程序等子程序共同下更好的实现程序要求。 整个代 码部分的设计,本小组分工合作完成,程序难点在于行列变换的情况较复杂,所以需跳转很多次,定义了许多变量来存放定义的值,起着标志的作用,通过比较值是否与预设的值相等,来实现跳转。 完成此部分后,我对子程序设计方法有了更进一步的了解,对于跳转语句的使用更加熟练,程序设计的能力也有所提升,思维更加严谨。 4 程序的调试与运行结果说明 程序的分析、代码的编写完成后,开始对代码进行编译和调试,程序调如图如下: 图 4— 1 调试图 1) 程序执行后建立窗口,在窗口中实现粒子 种子的初始化并调用。 如下图使粒子种子集中于中央并显示。 图 4— 2 运行图( 1) 2)窗口建立调用粒子种子,程序嗲用字程序实现粒子种子在窗口内的随机行走。 图 4— 3运行图( 2) 2)如图程序实现了对粒子种子的范围划定。 图 4— 4 运行图( 3) 通过对程序的编译、调试和运行,我对代码的调试方法更加熟悉,并了解到自己程序的不足之处,知道怎样去修改代码以及简化代 5 课程设计总结 的 特点 、不足 在动画程序中,通过对变量的定义以及对各子程序的调用,实现了对粒子的显示并移动,使其呈现动画效果。 让人在视觉上产生美感,程序尚有不足,比如效果不是很多,动画单一等。 在编程的过程中,遇到了很多没有预料到的困难,有很多知识点之前了解的很模糊,于是在编程变成完成之后,有很多细节上面的错误,不仅繁杂,而且有时候错误很隐蔽,给查找错误带来很大的困难。 这次实验让我明白了流程图的重要性,刚开始写程序的时候,直接就动手了,结果程序写的很乱,执行起来的效果也不好。 后来动手画了流程图,把大概的框架写 好,然后依据框架一点一点编写程序,发现写程序变得简单了很多,通过流程图,每一步要做什么事情,完成什么任务变得很清晰。 思路清晰以后,不仅程序编写更加容易,查找错误也更加轻松。 通过这次课设,我认识到我以前对流程图的观点是错误的,也更加熟悉了流程图的使用。 通过这次课程设计,我懂得了理论和实际相结合的重要性,在理论方面,看上去很容易实现的东西,实际操作起来,并没有那么容易。 经过这次编程,我提高了自己的动手能力和独立思考的能力,解决了很多难题。 参考文献 [1]李敬兆等编 .《汇编语言程序设计》 .合 肥:中国科学技术大学出版社, [2]李敬兆等编 .《汇编语言程序设计实验教程及习题解答》 .合肥:中国科学技术大学出版社, [3]王爽等编 .《汇编语言》 .北京:清华大学出版社, [4]曹加恒等编 .《新一代汇编语言课程设计》 .北京:高等教育出版社, [5]杨路明等编 .《汇编语言程序设计》 .长沙:中南大学出版社, [6]詹仕华等编 .《汇编语言程序设计》 .北京:中国电力出版社, [7]詹仕华等编 .《汇编语言程序设计习题解答及课程设计、设计 辅导》 .北京:中国电力出版社, [8]宋彩莉等编 .《汇编语言程序设计学习指导》 .西安:西安交通大学出版社, 致谢 汇编语言课程设计是培养学生综合运用所学知识,发现、提出、分析和解决实际问题能力的重要环节,是对学生实际动手能力的具体训练和考察过程。 随着科学技术发展的日新日异,计算机的在生活各方面中的广泛应用到达了空前的阶段。 差不多一周的时间过去了,回顾这段日子,至今我仍感慨良多。 从选课题到定稿,从理论到实践,在这过程中有苦也有甜。 通过这次课 设不仅巩固了我们平时所学的知识,查缺补漏;同时也让我们学到了许多在课本上没有的知识;使我懂得了理论与实际相结合的重要性,光有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才算是真正掌握了一门知识,并使自己得到提升。 在此次设计的过程中我们遇到了许多难题,比如说设计一个程序应该从哪着手,如何调试程序,发现问题如何解决等,但经过小组的讨论与学习,我们共同解决了这些问题,并在这过程中建立了深厚的友谊,更使我们认识到团队合作的重要性,与团结的力量,这给我们今后的生活有很大的启发。 在刘 树群老师的辛勤的指导与小组成员的共同努力下,此次汇编语言课程设计终于顺利完成。 其间遇到的许多问题都游逆而解。 同时,从刘树群老师的身上我学到了许多知识,在此我向刘老师表示我深切的感谢之情。 与此同时,对我们小组内的各成员以及给过我帮助的所有同学与老师也表示我忠心的祝福与感谢。 附录:程序清单 .486 .model flat,stdcall option casemap:none。 include D:\MASMplus\INCLUDE\ include D:\MASMplus\INCLUDE\ includelib D:\MASMplus\LIB\ include D:\MASMplus\INCLUDE\ includelib D:\MASMplus\LIB\ include D:\MASMplus\INCLUDE\ includelib D:\MASMplus\LIB\ include D:\MASMplus\include\ includelib D:\MASMplus\lib\ include D:\MASMplus\include\ includelib D:\MASMplus\lib\ IDD_ABOUTBOX equ 200 IDD_RNDPARAM equ 201 IDD_SYSPARAM equ 202 IDC_EDIT01 equ 1000 IDC_EDIT02 equ 1001 IDC_EDIT03 equ 1002 IDC_EDIT04 equ 1003 IDC_RADIO1 equ 1004 IDC_RADIO2 equ 1005 IDC_RADIO3 equ 1006 IDC_RADIO4 equ 1007 IDC_RADIO5 equ 1008 IDC_RADIO6 equ 1009 IDC_RADIO7 equ 1010 IDC_RADIO8 equ 1011 IDC_RADIO9 equ 1012 IDC_RADIO10 equ 1013 IDC_AWALK equ 4000 IDM_RESTART equ 2020 IDM_DELAY equ 2020 IDM_SAVEIMG equ 2020 IDM_EXIT equ 2020 IDM_SYSPARAM equ 2020 IDM_RNDPARAM equ 2020 IDM_BKCOLOR equ 2020 IDM_ABOUT equ 2020 MainMenu equ 3000。 种子点结构:种子坐标 (x,y),颜色 color ATOMST STRUCT x SWORD ? y SWORD ? color DWORD ? ATOMST ENDS .data xClient DWORD 600。 客户区宽度 yClient DWORD 400。 客户区高度 view DWORD 1。 生成模式: 0 无轨迹模式, 1 拖轨模式, 2 轨迹模式 smode DWORD 1。 种子模式: 0 分散, 1 集中 seed DWORD 1001。 种子数 astep DWORD 16。 单步次数 speed DWORD 18。 速度控制值(毫秒) ftime DWORD 0。 时钟标志: 0 没用, 100 时钟编号 rngs DWORD 242343,5436,5675,67,678979098,890,32545436,657563453,23435345,143545,45976768,6754,743453455,67546,754,754324783 ri。汇编语言课程设计粒子运动动画报告(编辑修改稿)
相关推荐
检查四个点之间的距离、角度直至完全符合为止。 观测点的布置及做法:根据图纸上观测点的位置,由专业测量单位负责22 观测,观 测点采用先浇筑后钻孔设置。 沉降观测的方法:根据现场实际情况,建筑物内选择坚固稳定的地方,埋设三个水准基点,与图纸上给出的沉降观测点组成闭合水准路线,以确保观测结果的精确度。 沉降观测是一项长期的系统观测工作,为了保证观测成果的正确性,尽可能做到四定
部分组成;跟踪转子的外观为一圆柱体,其由非导磁材料制作而成,一般有扇状形式的磁芯和不具有导磁性质的衬套两部分组成。 这种传感器输出的信号比较强、工作性能相对可靠、具有较长的使用寿命长、 对于应用环境场合要求不高、具有较强的适应性、物理结构紧凑可承受较大的振动冲击等;但是,这种传感器信噪比较低、体积较大,同时其输出波形为交流,一般需经整流、滤波后才可以使用,因而限制该传感器的使用范围。
同品种水泥砂浆抹面,再用毛刷带。 五、钢筋工程 该工程钢筋用量大,且钢筋规格多,适合于集中定货加工,在该工程施工过程中,部分钢筋必须放大样,才能准确施工,必须注意以下几点: 各类钢筋必须有出厂合格证以及质量监督部门的复验报告,单种钢筋用量过大的要重新送样检验。 基础底板钢筋保护层 35mm,筒壁保护层 30mm,竖保护层 20mm,水平环筋搭接长度 50d,竖向搭接 35d,底板钢筋尽量采用对焊
有方木或大板,上有罩棚防雨。 5). 钢筋焊接采用 E4303 型优质 碳钢焊条,焊条药皮必须完整未变质,并不得受潮。 受潮的焊条必须经过烘烤后使用。 6). 钢筋接长采用搭接单面焊,搭接长度大于 10 倍钢筋的直径 d。 焊接表面要光滑平整,及时清渣。 7). 为保证钢筋安装位置的准确性,钢筋安装前在 底板垫层混凝土上,墙模板一侧上划线,并标出予埋件的位置。 8).
用钢尺及 厚的塞尺现检查 4 屋 (托) 架、桁 架、梁 及受压杆件 跨中的垂直度 不大于 h1/250,且不大于 吊线、拉线、经纬仪和钢尺现场实测 5 侧向弯曲矢高 L2≤ 30m 不大于 L2/1000,且不大于 30m< L2≤ 60m 不大于 L2/1000,且不大于 L2> 60m 不大于 L2/1000,且不大于 一 般 项 1 标记 主要构件的中心线及标高基准点等标记应齐全 观察
10 米,场地土层较均匀,且地基承载力相对较高,地下水远离基础底部,对本工程无影响。 本场地的抗震设防烈度为 8 度。 交通条件 该 项目 所处地段东 有 河东大道 、 南 有 富强西街 , 北面为已规划的道路,交通极为便利,畅通无阻,为 人民群众健身休闲 提供了方便。 公共配套设施 条件 给水工程 项目给水水源由 河东 大道上的市政管网 提供, 引入一条 DN100 的给水管