x86-64位指令学习】的更多相关文章

 64位BASM学习随笔(一) Delphi的BASM一直是我最喜爱的内嵌汇编语言,同C/C++的内联汇编相比,它更方便,更具灵活性,由于C/C++的内联汇编仅仅能是或插入式的汇编代码,函数花括号背后隐藏的函数框架,限制了汇编代码的发挥,如不管有无參数和局部变量,总是有个栈框架,更烦人的是仅仅要你在函数中使用了esi,edi,ebx寄存器.就自己主动给你保存和恢复,使得这些寄存器没法在函数之间传递信息等.而Delphi的BASM能够是插入式的汇编代码,也但是全然的汇编方法.在全然的汇编方法下…
一.下载安装JDK 1.安装包下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html 根据需要进行下载,我的电脑是win7+64位,所以选择版本:jdk-9.0.1_windows-x64_bin.exe 2.双击安装包 ,点击下一步,建议不要装在C盘,我一般习惯性将所有软件装在E盘下面,首先是安装JDK: 3.继续点击下一步,安装完jdk-9.0.1,会自动安装jre-9.…
参考文章: (1)x86-64指令系统过程调用学习笔记 https://blog.csdn.net/weixin_44735312/article/details/89818907 创建文本sum.c并编写如下程序: #include <stdio.h> int sum(int x,int y){ int t = x +y; return t; } 通过如下命令生成sum.o文件. gcc -O2 -c sum.c 通过如下命令查看在x86-64平台上的机器指令: objdump -d sum…
1. 安装gcc,g++,make等开发环境 yum groupinstall "Development Tools" 2. 安装boost yum install boost boost-devel boost-doc 备注:默认的安装路径在/usr/lib64目录下 3. 例子 #include <boost/thread.hpp> #include <iostream> void task1() { // do stuff std::cout <&l…
应用软件开发的64 位WINDOWS 系统环境兼容性 1. 64 位CPU 硬件 目前的64位CPU分为两类:x64和IA64.x64的全称是x86-64,从名字上也可以看出来它和 x86是兼容的,原先的32位程序可以在x64上运行得很好,这也就是为什么在x64的CPU上 能够成功安装32位的Windows操作系统.现在市场上卖的家用电脑的CPU通常都是x64. 两家顶级CPU公司Intel和AMD分别推出了EM64T(Extended Memory 64 Technology)和 AMD64(…
来自:http://zhidao.baidu.com/link?url=nQBoaLgoOyYCUdI7V4WZCMlTW3tKscdkOnLTIvlYtPpwoVhQkSahq44HeofBfzFTrgu_no6fv062ti0TnMmbmK 系统软件是应用软件与硬件之间的桥梁.win7是系统,SQL是应用软件,那么win7就是硬件与SQL之间的桥梁.同是系统也是应用软件的基础,你的基础是32位,那么64位的应用软件能工作么?而硬件又是系统的基础,中间是驱动做为桥梁,所谓的32位win7指的是…
搭建前须要下载的软件包(默认已搭建好cocos2d-x而且可在VS上执行,本人VS版本号为2013): 1:java 下载地址:http://www.java.com/zh_CN/download/manual.jsp Windows 脱机64位 2:android SDK 搭建安卓交叉编译的IDE环境,现可在官方下载集成包,方便快捷. 下载地址:http://developer.android.com/sdk/index.html 选择DOWNLOAD FOR OTHER PLATFORMS…
MySQL的安装配置过程,一查网上一大堆,但是每个人在安装配置的过程中都会碰到一些问题,因为安装的版本不一样,有些命令可能就不适用了.所以安装之前一定先确认好你的版本号. 下面开始安装MYSQL8.0.13. 第一步:先去官网下载安装包:官网下载地址:https://dev.mysql.com/downloads/mysql/ 这是我下载的windows(x86 64位)的MySQL8.0.13的zip包.下载完毕以后,解压到你想要安装的位置,我放到了这个位置:D:\MyPrograms\mys…
代码在ubuntu下无缝运行OK 转到我的win7 64位 期间 学习机上 报错: Call to undefined function curl_init() 因为用到curl 远程抓取数据. 所以谷歌之: 总结,win7 64解决方法与win2003不同: 1.extension=php_curl.dll 2.extension=php_openssl.dll //取消php.ini前面的这2个 注释 3.确保php安装目录下 这libeay32.dll   ssleay32.dll   2…
0×00 摘要 混淆是一种能增加二进制分析和逆向工程难度与成本的常用技术.主流的混淆技术都是着眼于使用与目标CPU相同的机器代码,在相同的处理器模式下,隐藏代码并进行控制.本文中引入了一种新的混淆方法,这一方法利用了64Windows系统中的32位/64位交叉模式编码.针对静态和动态分析工具的案例研究证明了这种混淆技术虽然简单,但是十分有效. 0×01 64位Windows中的模式转换 所有的64位Windows操作系统都能向下兼容未修改过的 32位应用,这是通过WoW64(64位Windows…
虽然出生的时候,没有说过“Hello World!”,但是自从走上了编程之路,每一次输出“Hello World!”的时候,都觉得好比中了彩票大奖似的: 仔细算算,从2012年暑假到现在,经历了3年半的光阴,这段时间,不仅是知识.阅历.成长获得最大的一段,也是人生的一大转折点.在这期间,得以继续深造学习自己的专业,虽然踏入这行的时候,也是调剂来的,但是我用这3年的时间,恶补自己7年的不足:2015年,发生了三件大事,我毕业了,我工作了,我有女票了(三件事的重要程度递增):吃得苦中苦,方位人上人,…
X86就是我们一般用的32位的系统,指针长度为32位(386起):X64就是64位的系统,指针长度为64位. 选择硬件对应的软件,建议通过以下三条考虑:1.64位操作系统相对32位操作系统理论上性能会相应提升1倍:2.64位操作系统支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和操作系统最大只可支持3.5G内存:3.64位软件比32位软件要少,64位电脑可以安装32位操作系统,64位操作系统可以安装32位软件. 具体两者区别:1.设计初衷不同.64位操作系统的设计初衷是:满…
在通用PC领域,不论是windows还是linux界,我们都会经常听到"32位"与"64位"的说法,类似的还有"x86"与"x86_64","i386"与"amd64",这两组概念之间有着怎样的联系和区别呢?实际上这两组概念涉及了三个层次:硬件,系统和软件. 1 硬件 早期的intel处理器,如i386,486,586,奔腾系列的CPU架构,都是32位的(32位的寄存器,32位的虚拟地址…
开始->运行->输入cmd确定->输入systeminfo 回车 待加载完成,就会看到如下信息(不同版本略有差异): 一.如何查看电脑是32位(X86)还是64位(X64) 方法2:Windows7系统 右键桌面的计算机->属性->系统 二.如何知道自己的硬件是否支持64位系统 若出现x64(或x86)说明支持该系统. 2016-04-10 10:06:45…
看到有很多会员问到底是选Windows7 x86,还是选x64.这里简单的谈一下这这两种系统的区别. 简单的说x86代表32位操作系统  x64代表64位操作系统. 简单的判断电脑是否支持64位操作系统:http://www.windows7en.com/Win7/5305.html 如果你的CPU是双核以上,那肯定支持64位操作系统了 如果你的电脑内存大于4G,那就要用64位的系统了,因为32位的Windows 7也好,Vista也好,最大都只支持3.25G的内存.而64位的windows 7…
我看有许多同学用Win 7/Win 8 学习汇编,现在好多人的内存升级了都用64位系统了,但是64位W7没有自带的DEBUG和MASM. 1.首先下载DOSBOX,(下面附带地址)它的作用就是让你在64位下使用32.16位的软件.如果不使用DOSBOX就会出现程序不兼容的对话框. 安装完DOSBox后,我们就能运行汇编后的程序了 打开DOSBox后,我们可以看到Z : \ >,这是DOSBox里的虚拟盘,我们可以采用mount命令将其转变到自己的D盘: mount c e:\masm (PS:这…
原文:VSTO 学习笔记(十一)开发Excel 2010 64位自定义公式 Excel包含很多公式,如数学.日期.文本.逻辑等公式,非常方便,可以灵活快捷的对数据进行处理,达到我们想要的效果.Excel的内置公式虽然强大,但是在ERP等系统中,往往需要进行很多业务上的计算,如收发存台账.指定年.月.部门的消耗查询等,都是需要从数据库中查询的,且和业务紧密相连.这时仅仅依靠Excel的内置公式就不够了,需要添加自定义的公式来进行这些业务计算. 测试代码下载 本系列所有测试代码均在Visual St…
原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(Automation Executables) 2.Office加载项(COM or Excel Add-In) 3.Office文档代码或模板(Code Behind an Office Document or Template) 4.Office 智能标签(Smart Tags) 本次我们将学习使…
在安装PHP扩展(DLL,SO),除了需要对应的PHP版本外,在WINDOWS还需要区分(TS线程,NTS非线程),如何判断呢? 1.如何判断是NTS还是TS(WINDOWS用户) 看PHP所在目录中的文件名PHP5.DLL(是NTS)PHP5TS.DLL(是TS),这个比较简单粗暴. 2.客户使用的系统是64位的(2008 R2 2012等),如何选PHP扩展? PHP扩展的32位与64位,是指PHP程序而言,非指操作系统.而我们现在使用的PHP程序90%都是x86(32位)的.所以您在安装P…
如果你的机器上安装了odp.net,且确信machine.config也有类似以下结节:(64位+.net 4.0环境下,machine.config可能会有4份,分别对应于.net2.0/4.0的32/64位版本,要每个都检查过去哦) <DbProviderFactories>       <add name="Oracle Data Provider for .NET" invariant="Oracle.DataAccess.Client"…
最近自己在编写ActiveX控件.遇到的麻烦事不少. 今天遇到了这个问题“模块XXXX可能与您正在运行的Windows版本不兼容.检查该模块是否与regsvr32.exe的x86(32位)x64(64位)版本兼容.”.在网上找了很多,都是说放置在syswow文件里用这个文件夹里的regsvr32.exe进行注册.但是这个方法没用.后来考虑是否是编写的控件有问题,于是按照默认生成一个.运行注册,没问题.后来一步一步改,在VS的属性页设置配置类型为动态库(.dll)就不会出现问题.而设置为静态库时就…
在此列出x86架构处理器在64位模式下的可用寄存器列表,方便查阅- 这里要注意的是,在64位模式下,所有通用寄存器都能访问第8位部分,低16位部分以及低32位部分. 以下是64位模式下AMD64 ABI函数调用协议参数传递机制: rdi, rsi, rdx, rcx, r8, r9 以下是其它不需要由被调用者保存的寄存器: rax, r10, r11…
VS2012在win7 64位机中x86和x64下基本类型的占用空间大小 #include "stdafx.h" #include <windows.h> int _tmain(int argc, _TCHAR* argv[]) { int i = 0; i = sizeof(int); // x86:4 x64:4 i = sizeof(long); // x86:4 x64:4 i = sizeof(void*); // x86:4 x64:8 i = sizeof(s…
https://zh.wikipedia.org/wiki/X86 x86泛指一系列英特尔公司用于开发处理器的指令集架构,这类处理器最早为1978年面市的"Intel 8086"CPU. 该系列较早期的处理器名称是以数字来表示80x86.由于以"86"作为结尾,包括Intel 8086.80186.80286.80386以及80486,因此其架构被称为"x86".由于数字并不能作为注册商标,因此Intel及其竞争者均在新一代处理器使用可注册的名称…
英文64位ed2k://|file|en_windows_8_1_x64_dvd_2707217.iso|3899295744|8E604054013D21209B851E41DC19F6F5|/ 英文32位ed2k://|file|en_windows_8_1_x86_dvd_2707392.iso|2915131392|CC72E0D238F94071A5104EAF8F0CEEC3|/ 简体中文64位ed2k://|file|cn_windows_8_1_x64_dvd_2707237.i…
最近在使用pythin,因为要使用libsvm,所以到官网去下载libsvm.官网地址为libsvm(https://www.csie.ntu.edu.tw/~cjlin/libsvm/)结果下载下来后去搜安装教程,才知道官网的libsvm是32位系统可用的,64位系统则需要自己编译64位的动态链接库,编译动态链接库需要用到visual studio,而我这台机子上没有vs,所以问了问同学该如何办,她给我发来了这个网址下载64位libsvm的地址(www.lfd.uci.edu/~gohlke/…
最近在做zigbee的课程设计,需要Java实现对串口数据的读写操作. 网上找了很多代码,好像都比较过时了,直接拿来用没法跑通……QAQ……然后自己写个教程留底,如有不当之处还请各位路过的大神赐教. 参考资料:http://www.docin.com/p-224301266.html 操作系统:64位Win7 java的串口API包:javax.comm在windows下的开法维护已经停止了,RXTX的旧版本支持在javax.comm-win32-2.0基础上的扩展,RXTX新版本支持对java…
1.检查系统版本号 lsb_release -a 2.检查32位或64位系统 file /bin/ls…
出处:http://tieba.baidu.com/p/2277546332 1.首先下载DOSBOX,它的作用就是让你在64位下使用32.16位的软件.如果不使用DOSBOX就会出现程序不兼容的对话框. 开始安装: 双击打开DOSBox软件,按步骤进行安装,安装目录任选,不过由于C盘是系统盘,所以最好安装在其他盘里:安装成功后打开DOSBox, 我们就可以看到一个非常熟悉的界面了,和电脑里的命令提示符DOS窗口差不多: (注意:由于它的两个窗口是在一起作用的,所以使用的时候不要关掉其中的任一个…
linux内核学习之三:linux中的"32位"与"64位" 在通用PC领域,不论是windows还是linux界,我们都会经常听到"32位"与"64位"的说法,类似的还有"x86"与"x86_64","i386"与"amd64",这两组概念之间有着怎样的联系和区别的?实际上这两组概念涉及了三个层次:硬件,系统和软件. 1 硬件 早期的intel处…