- 博客(30)
- 资源 (18)
- 收藏
- 关注
转载 汇编 跳转指令
跳转指令分三类:一、无条件跳转: JMP;二、根据 CX、ECX 寄存器的值跳转: JCXZ(CX 为 0 则跳转)、JECXZ(ECX 为 0 则跳转);三、根据 EFLAGS 寄存器的标志位跳转, 这个太多了.根据标志位跳转的指令:JE ;等于则跳转JNE ;不等于则跳转JZ ;为 0 则跳转JNZ ;不为 0 则跳转JS ;为负则跳转JNS ;不为负则跳转JC ;进位则跳转JNC ;不进位则跳转JO ;溢出则跳转JNO ;...
2021-01-25 11:57:00 2520
转载 QImage转RGB,RGB转YUV 再由YUV转回RGB 为什么图像就花了
我目前在作图像处理方面的,取出RGB数据后转YUV然后对YUV进行操作操作完后转回RGB再显示出来图像但是在做的过程中发现一个问题,就算我什么也不改就直接是提取RGB再由RGB转YUV再转回RGB图像就花了这是为什么直接上代码原图提取再还原doubleT[3][3]={{0.2126,0.7152,0.0722},{-0.1146,-0.3854,0.5000},{0.5000,-0.4542,-0.0468}};//RGB...
2021-01-24 19:29:21 1341 1
转载 delphi 反汇编窗口
一、寄存器结构这是一个寄存器的结构:二、CPU窗口解释图片左上角,有蓝色选中的那一块是反汇编窗口,这个窗口显示的是汇编代码图片左下角是转储窗格,先来看看第一排:00410000 49 00 41 00 64 FF 32 64 I.A.d.2d00410000 这个暂时我还不清楚,应该是内存地址。接下来我们来看看内存中的内容,也就是:49 00 41 00 64 FF 32 64首先它是8进制的,所以每个数字就代表一个字节,即4是一个字节,9是一个字节…所以这边一共有16个字节(
2021-01-22 09:27:54 830
转载 计算机的堆与栈
内存堆和栈的区别原文:http://student.csdn.net/link.php?url=http://www.top-e.org%2Fjiaoshi%2Fhtml%2F427.html在计算机领域,堆栈是一个不容忽视的概念,我们编写的C语言程序基本上都要用到。但对于很多的初学着来说,堆栈是一个很模糊的概念。堆栈:一种数据结构、一个在程序运行时用于存放的地方,这可能是很多初学者的认识,因为我曾经就是这么想的和汇编语言中的堆栈一词混为一谈。我身边的一些编程的朋友以及在网上看帖遇到的朋友中有.
2021-01-21 16:43:56 700
转载 c++ 对象的普通创建与new创建的区别
我们都知道C++中有三种创建对象的方法,如下:#include <iostream>using namespace std;class A{private: int n;public: A(int m):n(m) { } ~A(){}};int main(){ A a(1); //栈中分配 A b = A(1); //栈中分配 A* c = new A(1); //堆中分配 delete c;
2021-01-21 16:04:12 1040
原创 qt 操作json与xml
#include "qthread.h";#include<qjsonobject.h>#include<QJsonDocument>#include<qjsonarray.h>#include<QtXml/qxml.h>;#include"qfile.h"#include"QtXml/qdom.h"#include"qdir.h"void usbtest::on_btn_json_clicked(){ QJsonObject json.
2021-01-21 15:46:45 573
转载 qt usb hid 读写数据
date:2017/04/12 11:10调用HIDAPI可实现读数据功能,但是功能十分单一,无法满足需求。最简单的调用如下:1 void Widget::myhid_read(){2 res = hid_read(handle,buf_IN,2);3 for(int i = 0;i < 2;i++){4 qDebug("buf[%d]:0x%02x",i,buf_IN[i]);5 } 6 }使用按钮click()操作调用该
2021-01-20 15:30:01 1791 1
转载 delphi 与 c++ 数据类型对照表
Delphi 数据类型 C/C++ ShorInt 8位有符号整数 char Byte 8位无符号整数 BYTE,unsigned short SmallInt 16位有符号整数 short Word 16位无符号整数 unsigned short Integer,LongInt 32位有符号整数 int,long Cardinal,LongWord/DWORD 32位无符号整数 unsigned l
2021-01-19 16:40:11 1557
转载 0xff作用
首先我们要都知道, &表示按位与,只有两个位同时为1,才能得到1, 0x代表16进制数,0xff表示的数二进制1111 1111 占一个字节.和其进行&操作的数,最低8位,不会发生变化.下面着重来说说&0xff都有哪些应用:1. 只是为了取得低八位通常配合移位操作符>>使用例如:java socket通信中基于长度的成帧方法中,如果发送的信息长度小于65535字节,长度信息的字节定义为两个字节长度。这时候将两个字节长的长度信息,以Big-Endian的
2021-01-19 14:30:56 468
转载 c语言中static关键字用法详解
概述static关键字在c语言中比较常用,使用恰当能够大大提高程序的模块化特性,有利于扩展和维护。但是对于c语言初学者,static由于使用灵活,并不容易掌握。本文就static在c语言中的应用进行总结,供参考使用。错漏之处,请不吝指正。最后一节加入了c++面向对象中static的使用特性,当作拓展阅读。在程序中使用static变量1. 局部变量普通局部变量是再熟悉不过的变量了,在任何一个函数内部定义的变量(不加static修饰符)都属于这个范畴。编译器一般不对普通局部变量进行初
2021-01-17 17:16:16 224
原创 delphi firedac 数据集保存到流并还原
昨天晚上想把DIOCP_V5 服务端改为 支持 firdac fdmemtable 数据集,结果 返回 客户端,客户端加载不了报错干,看数据长度一模一样,怎么回事,百度半天没结果后来直接FDMemTable1.SaveToStream(mst, sfBinary);紧接着 FDMemTable2.LoadFromStream(mst, sfBinary);干,还是报错今早,发现,原来非常简单FDMemTable1.SaveToStream(mst, sfBi...
2021-01-17 10:54:13 575
转载 编译 EasyHook 32-bit/64-bit 静态库 Lib
EasyHook 是 Windows 平台下开源的 APIHOOK 工具库,因其开源有 64 位版本而注广为流传,微软也有提供 64 位 APIHOOK 的代码,但是要收费的。最近公司让我做一个 HOOK 的名单功能,顺便就研究了一下 EasyHook 的静态库编译和使用,也弥补一下曾经再这方面耗费的心血。下图是 HOOK 成功后 DebugView 的输出。配置 EasyHook 静态库编译环境首先去官方下载 EasyHook 源代码到本地,使用 VS2015 打开项目(目前官方是 VS.
2021-01-16 16:24:48 980
原创 delphi firedac 连接mysql
FDPhysMySQLDriverLink1.VendorLib := ExtractFilePath(ParamStr(0)) + 'libmysql.dll'; FDPhysMySQLDriverLink1.DriverID := 'MySQL'; con1.Close; con1.ConnectionString := 'DriverID=MySQL;Database=flamingoIM;Password=123456;Server=192.168.239.129' +...
2021-01-15 10:32:22 496
转载 linux安装VScode,跟C++开发实用的插件安装
1.VSCode在linux下的安装:1.去VSCode官网下载对应系统的安装包,如下:由于自己常使用的系统是centos,其安装包的格式rpm,所以这里点击【.rpm】格式的软件包下载。2.安装:下载完后,双击运行即可进行安装,如果运行不了则右键属性,给其添加权限。指令如下:chomd +x 13.开发的实用插件安装:主要参考博客:linux vscode 安装与配置 简单的程序例子设置软件语言为中文: 【Ctrl+Shift+x】启动扩展安装搜索栏,搜索Chines
2021-01-14 15:29:03 530
原创 centos 7 安装图形桌面
命令:yum groupinstall"GNOME Desktop""Graphical Administration Tools"
2021-01-14 14:46:41 162
原创 c++ 二进制与十进制互转
long long ConVertDec2Bin(int a)//十进制转二进制{ long long bin = 0;//返回值变量 int n = a; //参数 int re,i=1;//余数 while (n != 0) { re = n % 2; //n取余 //n /= 2;//取整 n >>= 1;//取整 bin += re * i; i *= 10; } return bin;}int ConVerBin2Dec(char a[...
2021-01-14 11:34:51 2030
转载 c++ windows 端口复用例子及利弊
主要用到的函数:intsetsockopt(SOCKETs,intlevel,intoptname,constcharFAR*optval,intoptlen);s:标识一个套接口的描述字。level:选项定义的层次;支持SOL_SOCKET、IPPROTO_TCP、IPPROTO_IP和IPPROTO_IPV6。optname:需设置的选项。optval:指针,指向存放选项待设置的新值的缓冲区。optlen:optval缓冲区长度。第三个列表及...
2021-01-13 15:25:03 1157
转载 p=p->next 是什么意思
问题:->是一个整体,它是用于指向结构体、C++中的class等含有子数据的指针用来取子数据。换种说法,如果我们在C语言中定义了一个结构体,然后申明一个指针指向这个结构体,那么我们要用指针取出结构体中的数据,就要用到“->”.举个例子:structData{int a,b,c;}; /*定义结构体*/struct Data * p;/*定义结构体指针*/struct Data A = {1,2,3};/*声明变量A*/int x;/*声明一个变量x*/p = &..
2021-01-13 14:58:00 11573 7
转载 C++程序代码优化的方法
1、选择合适的算法和数据结构 选择一种合适的数据结构很重要,如果在一堆随机存放的数中使用了大量的插入和删除指令,那使用链表要快得多。数组与指针语句具有十分密切的关系,一般来说,指针比较灵活简洁,而数组则比较直观,容易理解。对于大部分的编译器,使用指针比使用数组生成的代码更短,执行效率更高。 在许多种情况下,可以用指针运算代替数组索引,这样做常常能产生又快又短的代码。与数组索引相比,指针一般能使代码速度更快,占用空间更少。使用多维数组时差异更明显。下面的代码作用是相同的,但是效率不一样。...
2021-01-11 17:27:02 2276
转载 c++获取浮点数随机数
#include <random>#include <iostream> int main(){ std::random_device rd; //Will be used to obtain a seed for the random number engine std::mt19937 gen(rd()); //Standard mersenne_twister_engine seeded with rd() std::uniform_real.
2021-01-11 16:31:43 1272
原创 c++ 获取桌面图标的坐标与名称
#include<Windows.h>#include<commctrl.h>#include <stdio.h> typedef struct tagLVITEM64A{UINT mask;int iItem;int iSubItem;UINT state;UINT stateMask;INT64 pszText;int cchTextMax;int iImage;LPARAM lParam;#if (_WIN32_I.
2021-01-11 15:56:58 1466 4
原创 delphi x64内联汇编
win32: 客户 Pascal 与 asm 混合编程function add( var a: Integer ): Integer;beginasm mov eax,dword ptr[a] add eax,1; mov dword ptr [a],eaxendshowmessage(a.tostring());end;x64:必须全汇编function add( var a: Integer ): Integer...
2021-01-11 12:19:26 749
转载 A星寻路算法(转载)
A星算法核心公式就是F值的计算:F = G + HF - 方块的总移动代价G - 开始点到当前方块的移动代价H - 当前方块到结束点的预估移动代价G值是怎么计算的?假设现在我们在某一格子,邻近有8个格子可走,当我们往上、下、左、右这4个格子走时,移动代价为10;当往左上、左下、右上、右下这4个格子走时,移动代价为14;即走斜线的移动代价为走直线的1.4倍。H值是如何预估出来的?有多种方式可以预估H值,如曼哈顿距离、欧式距离、对角线估价,最常用最简单的方法就是使用曼哈顿距离进行预估:
2021-01-09 21:34:10 831
转载 i++和++i命令的区别
i++和++i命令的区别有:1、赋值顺序不同++ i 是先加bai后赋值;i ++ 是先赋值后加;++i和i++都是分两步完成的。因为++i 是后面一步才赋值的,所以它能够当作一个变量进行级联赋值,++i = a =b,即 ++i 是一个左值;i++ 的后面一步是自增,不是左值。形象的理解可以是i++先做别的事,再自己加1,++i先自己加1,再做别的事情。2、效率不同比如i=3,b=i++就是说b=3,完成之后让i变成4,b=++i就是先让i++变成4,然后b=4,其中++i比i+.
2021-01-07 20:40:27 279
原创 qt,mfc, windows 进程间共享内存通讯
mfc:CreateFileMapping 创建map,MapViewOfFile 打开map,UnmapViewOfFile(m_hMapFile);释放mapCloseHandle(m_hMapFile);关闭句柄//自定义定义#define MSG_MSG3 (WM_USER + 102)//创建mapint Cp1Dlg::MapFile(){ CString str; m_edit7.GetWindowTextA(str); if(str.GetL...
2021-01-07 15:00:15 1316 7
原创 mssql stuff 使用
CREATE view [dbo].[v_qua_rsmaininfo] as select '' printuser,a.bid,datediff(day,a.residedate,a.planleavedate+1) residedays,a.mealid,q.mealname,c.jysnote,c.cynote,c.chnote,c.hlnote,c.ebnote,c.bzgynote, w.bname,case b.ispc when -1 then c.ispc else b....
2021-01-07 14:43:46 1019
转载 Delphi与Qt在Windows下使用共享内存进程间通信
Delphi部分type TGuardInfo=record Lock: Integer; end; PGuardInfo = ^TGuardInfo; TGuardShareMem=class private FHandle: THandle; FGuardInfo: PGuardInfo; public constructor Create; destructor Destroy; override; functio...
2021-01-05 17:59:10 595
原创 win10 vs2017 编译 obs 26,带摄像头
安装CMake下载地址:https://cmake.org/download/,安装比较简单,直接一直下一步到结束即可。注意:编译obs 26要使用3.16以上版本的CMakevs2017 社区版安装下载地址:https://docs.microsoft.com/en-us/visualstudio/releasenotes/vs2017-relnotes安装qt5.9下载地址:https://download.qt.io/official_releases/qt/...
2021-01-03 11:43:13 400
windows下微软mpi 并行编程组件,包含头文件,安装包,sdk,动态库等,及demo
2020-12-29
delphi scalemm2
2018-04-27
delphi7 SSL 控件 SecureBlackbox
2016-05-09
路由器压力测试工具
2016-05-07
武希松大牛的dll Hook单元,delphi源代码加demo
2016-05-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人