当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 重庆建设中学 杨宏伟 我们知道计算机的计算精度不是无限大的,甚至是十分有限的。
 

 

    摘要:作者: 徐毅 许润涛 王宇 摘 要:本文通过详细讨论如何用vc实现对属性表按钮区的操作以改变属性页的外观,从而提供一种对windows应用程序的非窗口客户区进行绘制的方法,并给出了一个简单的示例程序。 关键字:属性表类、非窗口区、位图 属性表类(cpropertysheet class)在编写windows应用程序时使用非常广泛,如编写安装向导程序、应用程序配置等很多应用程序都......
    摘要:作者: 梁晨宝 本工程类似于oicq的消息发送机制,不过他只能够发送简单的字符串。虽然简单,但他也是一个很好的vc网络学习例子。   本例通过vc带的socket类,重载了他的一个接受类mysock类,此类可以吧接收到的信息显示在客户区理。以下是实现过程:   建立一个mfc 单文档工程,工程名为oicq,在第四步选取windows sockets支持,其它取默认设置即可。为了简单,这里......


设计高精度乘法计算函数
重庆建设中学 杨宏伟

  我们知道计算机的计算精度不是无限大的,甚至是十分有限的.cpu的字长与操作系统的处理能力直接制约着运算精度与运算能力.随着计算机应用的深入,人们对计算能力的需求,尤其是精度的需求,越来越高.虽然目前32位cpu及操作系统提供的计算精度,较之从前已有很大的提高,而且精度更高的64位cpu及操作系统正在普及,但是,对许多计算机应用课题来说,能不能具有不直接依赖硬件条件的高精度.高性能计算能力仍是至关重要的.为此,设计高精度计算的软件包,用软件方法实现高精度计算,是一件有实用价值的工作.例如,目前在电子商务应用中,密码的校验及计算就是对高精度计算的典型需求. 【程序编程相关:如何用位图显示下压按钮

【推荐阅读:如何检测打印机是否联机

分析问题 【扩展信息:用树型控制展现Win95注册库

由于c语言具有执行效率高.支持动态存储分配等特点,我们选用c语言编写了一套工具函数,供高精度计算使用.乘法运算在计算机运算中是一种基本运算,它的计算过程对整个计算效率有举足轻重的影响.仔细研究乘法运算对高精度计算十分必要.

为了实现高精度计算,首先要建立高精度的数据表示方法.我们采用将整数与小数分开,组成两个队列的方法存储数据.这种方法不仅节约存储空间,而且有利于确保整数运算的精度.

描述运算对象的数据结构如下:

struct vararray {

char cdigit; //保存数据位

//指向下一个数据位

struct vararray * spnext;

};

 

struct supernumber

{

//指向最低位整数

struct vararray * spintpart;

 

//指向最低位小数

struct vararray * spdecpart;

 

//指向最高位整数

struct vararray * spintlast;

 

//指向最高位小数

struct vararray * spdeclast;

 

int inumberint; //整数位数

int inumberdec; //小数位数

char csign;

}; //符号位

在用supernumber结构描述运算对象的基础上,我们定义了一套函数,全面实现supernumber型数据的输入.输出.赋值.比较.加.减.乘.除.整除等运算功能.本文重点介绍无精度损失的乘法计算方法及主要函数的设计.
...   下一页
    摘要:作者: 广东省深圳市温卫红陈耀光 (ewardchen@21cn.com) 开发基于 windows nt/2000的程序时,程序员往往需要知道系统是否处于屏幕保护状态,然后可以根据不同的状态在程序中做出相应的处理,如改变程序运行的优先级、先执行低优先级的例行工作等,以优化系统性能。微软公司在 windows 2000操作系统中提供了 systemparametersinfo() api函......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE