收藏本版 |订阅

编程语言 今日: 0|主题: 642|排名: 14 

  • Vdsp(bf561)中的浮点运算(16):fract2x16类型
    由于BF561内部带有两个16位的MAC,因此它将可以在一个周期内进行两个fract16类型的运算。 为适应这种特性,vdsp引入了一个称之为fract2x16的类型。它其实是定义为一个int类型的整数,但是其实际意义却是要用高低16位分别来表示两个fract16类型。 typedef int   _raw32; typedef _raw32     raw2x16; typedef raw2x16 ...
    2196 [db:作者] 发表于 2016-10-17 编程语言
  • 控制台聊天程序实例代码
    今天在网上找到了个控制台聊天程序实例,感觉不错,稍微做些修改,以作收藏之用。 服务器端程序代码: view plaincopy to clipboardprint? // 2009-06-28 #pragma comment(lib,"ws2_32.lib") #include #include #include using namespace std; string strCurMsg=""; void recvProc(SOCKET sockConnect) { char msgRcv[100] ...
    2193 [db:作者] 发表于 2016-10-17 编程语言
  • Vdsp(bf561)中的浮点运算(15):vdsp库的一个BUG
    在写完fract除法之后,偶然发现在vdsp的一个头文件中提供了fract16除法运算的函数,这个文件就是VisualDSP 5.0\Blackfin\include\fract_math.h: /* Produces a result which is the fractional division of f1 by f2. Not a builtin * as written in C code. */ #pragma inline #pragma always_inline static fract16 div_ ...
    2200 [db:作者] 发表于 2016-10-17 编程语言
  • Qt学习之路(8):创建一个对话框(下)
    接着前一篇,下面是源代码部分: #include #include "finddialog.h" FindDialog::FindDialog(QWidget *parent) : QDialog(parent) { label = new QLabel(tr("Find &what:")); lineEdit = new QLineEdit; label->setBuddy(lineEdit); caseCheckBox = new QCheckBox(tr("Match &case")); backwardCheckBox = new QCheckBox(t ...
    2196 [db:作者] 发表于 2016-10-17 编程语言
  • c/c++支持可变参数的函数
    一、为什么要使用可变参数的函数? 一般我们编程的时候,函数中形式参数的数目通常是确定的,在调用时要依次给出与形式参数对应的所有实际参数。但在某些情况下希望函数的参数个数可以根据需要确定,因此c语言引入可变参数函数。这也是c功能强大的一个方面,其它某些语言,比如fortran就没有这个功能。 典型的可变参数函数 ...
    2193 [db:作者] 发表于 2016-10-17 编程语言
  • Vdsp(bf561)中的浮点运算(13):fract16乘法运算
    vdsp提供了三种不同的方式进行fract16的乘法运算。 1.1 mult_fr1x16函数 这个函数定义为: #pragma inline #pragma always_inline static fract16  mult_fr1x16(fract16  __a, fract16  __b) { fract16  __rval = __builtin_mult_fr1x16(__a, __b); return __rval; } 从这里可以看出我们实际可以使用__builtin_mult_fr1 ...
    2192 [db:作者] 发表于 2016-10-17 编程语言
  • Qt学习之路(5):组件布局
    顾名思义,绝对定位就是使用最原始的定位方法,给出这个组件的坐标和长宽值。这样,Qt就知道该把组件放在哪里,以及怎么设置组件的大小了。但是这样做的一个问题是,如果用户改变了窗口大小,比如点击了最大化或者拖动窗口边缘,这时,你就要自己编写相应的函数来响应这些变化,以避免那些组件还只是静静地呆在一个角落。或 ...
    2194 [db:作者] 发表于 2016-10-17 编程语言
  • Vdsp(bf561)中的浮点运算(9):long double和float的比较
    在默认情况下,vdsp认为double和float这两种类型是一样的,因此我们比较long double和float。 1.1 类型表示 下面是两种类型的数据表示: 1.2 正常情况下的运算效率 下表给出两种类型下做运算的效率比较,选择High performance 狂汗,这个long double做除法也太狠了点! 下表给出两种类型下做运算的效率比较,选择Strict I ...
    2193 [db:作者] 发表于 2016-10-17 编程语言
  • Vdsp(bf561)中的浮点运算(6):float加减运算
    一直以为float加减运算很简单,无非就是将之转换为__float32_add和__float32_sub这两个函数调用而已,然后用软件模拟进行加减运算。但真的如此简单吗?当一些让人不太舒服的条件出现的时候,还是如此吗? 1.1 Vdsp对float加减运算的处理 在vdsp下,可以很简单地用: float add(float x, float y) { float r = x + y; return ...
    2127 [db:作者] 发表于 2016-10-17 编程语言
  • Vdsp(bf561)中的浮点运算(5):float类型表示总结
    1.1 float的疑问 写一行很简单的C代码: float a = 1234.56; 用vdsp编译后的汇编代码为: R0 = 20972 ( X ) ; R0.H = 17562 ; [ FP + 0x10 ] = R0 ; 有点看不懂,呵呵,R0的值转换为十六进制就是0x449A51EC。根据vdsp文档的说法,其单精度浮点数格式为: 浮点数计算公式: 将0x449A51EC转换为二进制: 0100 0100 1001 101 ...
    2125 [db:作者] 发表于 2016-10-17 编程语言
  • TLocateOptions的用法
    void __fastcall TForm1::Button1Click(TObject *Sender) { bool FindSuccess; TLocateOptions SearchOptions; SearchOptionsLocate("字段名",Edit1->Text,SearchOptions); if(FindSuccess) ShowMessage("ok");
    2170 [db:作者] 发表于 2016-10-17 编程语言
  • CB编译好的Exe程序运行会提示找不到xx库之类的解决方法
    CB的完全编译问题,大概是初学BCB的朋友们问的最多的问题。 症状就是编译好的Exe程序拷到没有安装BCB的机器上运行会提示找不到xx库之类的,解决方法: 在project->Options->Compiler中点击Release, 在project->Options->Packages中取消Builder with runtime packages的对钩 在project->Options->Linker中取消Use dynamic RT ...
    2169 [db:作者] 发表于 2016-10-17 编程语言
  • Win32调试接口设计与实现浅析
    所谓调试器实际上是一个很宽泛的概念,凡是能够以某种形式监控其他程序执行过程的程序,都可以泛称为调试器。在Windows平台上,根据调试器的实现原理大概可以将之分为三类:内核态调试器、用户态调试器和伪代码调试器。 内核态调试器直接工作在操作系统内核一级,在硬件与操作系统之间针对系统核心或驱动进行调试,常见的有 ...
    2119 [db:作者] 发表于 2016-10-17 编程语言
  • 解决TCP网络传输“粘包”问题
    当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API)。TCP/IP传输层有两个并列的协议:TCP和UDP。其中TCP(transport control protocol,传输控制协议)是面向连接的,提供高可靠性服务。UDP(user datagram protocol,用户数据报协议)是无连接的,提供高效率服务。在实际工程应用 ...
    2127 [db:作者] 发表于 2016-10-17 编程语言
  • 用CB实现图像的特技显示
    在网页、软件和游戏中,我们经常可以看到图像的各种特技显示,如中心扩散、百叶窗帘、右下推出等,这种动感图像显示,往往给人一种赏心悦目的感觉,给我们的应用程序增加了一些美感。在C++ Builder中,我们可以很容易地实现这些功能。下面以一个具体的例子,介绍实现中心扩散和百叶窗帘两种显示技巧,并说明在C++ Builder中 ...
    2120 [db:作者] 发表于 2016-10-17 编程语言
  • C++学习摘要之一:类和对象
    第一章 类和对象 类和对象是面向对象程序设计的两个最基本、最重要的概念。所谓对象就是客观事务在计算机中的抽象描述;而所谓类则是对具有相似属性和行为的一组对象的统一描述。从程序设计语言的角度来说,类是一种数据类型,而对象是具有这种类型的变量。 1.类的定义 类定义的一般形式为: class 类名 { private: 数据成 ...
    2126 [db:作者] 发表于 2016-10-17 编程语言
  • 在C++Builder利用NetBIOS进行编程
    NetBIOS是网络基本的输入/输出系统,是一个应用于程序接口,用于数据源与目的地之间的数据交换。即能够访问支持计算机应用程序和设备通信时要用到的各种服务,具有明确而简单的通信协议,必须用特殊的命令序列来调用NetBIOS服务。 首先我们来了解一下NetBIOS的基本知识。 一.NetBIOS 的基础 1。在网络层次中,NetBIOS是处于 ...
    2122 [db:作者] 发表于 2016-10-17 编程语言
  • 关于MD5的一些知识
    MD5简介 MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。 Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了“字节串”而不是“字符串”这个词,是因为这种变换只与字节的 ...
    2119 [db:作者] 发表于 2016-10-17 编程语言
  • 用游戏操纵杆摸拟鼠标
    要编写一个支持游戏操纵杆的应用程序,首先必须要捕获游戏操纵杆,接着要处理Windows发送给程序窗口的操纵杆消息,最后使用完操纵杆后,还应将捕获的操纵杆资源释放。 调用API函数joySetCapture能捕获游戏操纵杆。调用joySetCapture函数后,操纵杆产生的所有消息将会发送到指定的窗口。它的原型为: MMRESULT joySetCapture ...
    2125 [db:作者] 发表于 2016-10-17 编程语言
  • 用任务条跟踪文件下载
    注意:本文代码不是最快的和最有效的代码。我有一套更快的代码。希望你在阅读本文之后能编写出自己的高效代码。 概要 程序用线程管理下载过程,这样主程序就不会被封闭,程序还有中止下载的功能。下载过程在线程中单独进行,并随时刷新屏幕上的任务条状态。 创建下载文件: CInternetSession netSession; CStdioFile *fil ...
    2125 [db:作者] 发表于 2016-10-17 编程语言
  • 下一页 »

    快速发帖

    还可输入 80 个字符
    您需要登录后才可以发帖 登录 | 立即注册

    本版积分规则

    关注公众号

    相关侵权、举报、投诉及建议等,请发 E-mail:admin@discuz.vip

    Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

    在本版发帖
    关注公众号
    QQ客服返回顶部