ASM
文章平均质量分 74
pizi0475
这个作者很懒,什么都没留下…
展开
-
汇编伪指令
段定义伪指令 段定义伪指令是表示一个段开始和结束的命令,80x86有两种段定义的方式:完整段定义和简化段定义,分别使用不同的段定义伪指令来表示各种段。 1 完整的段定义伪指令 完整段定义伪指令的格式如下: 段名 SEGMENT . . . 段名 ENDS 段名由用户命名。对于数据段、附加段和堆栈段来说,段内一般是存储单元的定义、分配等伪指令语句;对于代码段中则主要是转载 2010-05-26 22:43:00 · 3845 阅读 · 0 评论 -
正式宣布DXBC2GLSL,HLSL字节码到GLSL的编译器
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=2826三年前,我就曾经计划过一个KlayGE的长期研发子项目,D3D11 HLSL字节码到GLSL的编译器。两年前,在d3d1x for linux代码的帮助下,基本的字节码解析和反汇编工具已经实现。如今,这个子项目被正式命名为DXBC2GLSL,在库和工具两个层面上提供HLS转载 2015-11-05 19:14:18 · 3610 阅读 · 0 评论 -
微代码
微代码(Microcode):用简单的硬件操作来模拟当时无法用技术直接实现的复杂指令.微代码首先于1951年由英国的M.V.Wilkes引入,它是计算机工程学上的重大创新.它把计算机清楚的分成了两个概念层:体系结构和实现.wikipedia---Microcode翻译微码是许多计算机或处理器对硬件结构的一层抽象,或是为实现复杂机器指令的一种数据结构。它一般驻留在高速存储器中并将机器转载 2015-11-04 11:26:08 · 2201 阅读 · 0 评论 -
计算机中基本类型float值表示和大小比较问题
通常计算机编程语言中都建议不要比较基本类型float的大小,特别是不要用等号来比较。(BigDecimal等对象类型例外,因为它已经不是采用IEEE 754标准表示法)举例说明: 十进制小数: 12.75 表示 1*10^1 + 2*10^0 + 7*10^-1 + 5*10^-2 (注:10^1表示10的一次方也就是10,10^-2表示10的-2次方就是是1/100)转载 2015-01-15 10:55:59 · 3760 阅读 · 0 评论 -
Shader Model 3 寄存器
http://msdn.microsoft.com/en-us/library/bb509656(v=VS.85).aspx Registers - vs_3_0This section contains reference information for the input and output registers implemented by vertex shader ver转载 2011-06-20 17:38:00 · 2868 阅读 · 0 评论 -
HLSL Effect的vertex shader和pixel shader的参数传递
HLSL基本以C语言的习惯来写的,但是如果完全以C语言的角度来看,我个人感觉入门最难理解就是顶点着色器和像素着色器的两个函数的参数传递了。 下面以最简单的HLSL中效果框架举例说下自己的理解。 uniform extern float4x4 gWVP; struct OutputVS { float4 posH : POSITION0;转载 2012-07-25 20:08:07 · 6929 阅读 · 0 评论 -
用asm写shader的注意事项
1. 要分清哪些是instruction 哪些是macroinstruction,对于macroinstruction,它经过汇编后实际上会展开成一系列instruction,所以使用macroinstruction的时候最好不要把同一个寄存器作为源寄存器和目的寄存器,因为宏展开后可能在这些语句的前间部分出现修改源寄存器的语句,而在后面部分显然不希望源寄存器被修改,所以导致出错。转载 2009-06-09 11:16:00 · 2601 阅读 · 0 评论 -
cpu和操作系统的几种模式
<br />转自http://www.cnblogs.com/jnet/archive/2008/05/12/1193675.html<br />担心找不到了,转过来了,谢谢jnet了,如果不同意的话请通知我,我会尽快删除。<br /> 一直以来,都搞不清楚这几个概念。在网上搜了一下,把它晒上,不会再忘记! 有其它的内容,请看到的朋友请补充。<br /><br /> 从80386开始,cpu有三种工作方式:实模式,保护模式和虚拟8086模式。只有在刚刚启动的时候是real-mode,等到linux转载 2011-04-04 18:05:00 · 2623 阅读 · 0 评论 -
CPU是什么?都有哪些标准?
<br />1.主频 <br /><br />主频也叫时钟频率,单位是MHz,用来表示CPU的运算速度。CPU的主频=外频×倍频系数。很多人认为主频就决定着CPU的运行速度,这不仅是个片面的,而且对于服务器来讲,这个认识也出现了偏差。至今,没有一条确定的公式能够实现主频和实际的运算速度两者之间的数值关系,即使是两大处理器厂家Intel和AMD,在这点上也存在着很大的争议,我们从Intel的产品的发展趋势,可以看出Intel很注重加强自身主频的发展。像其他的处理器厂家,有人曾经拿过一快1G的全美达来做比较,它转载 2011-04-04 17:29:00 · 3034 阅读 · 0 评论 -
不同平台编译器区别及迁移注意事项
Sun Studio ,AIX xlc,及gcc使用方法:简介: Sun Studio编译器支持sun公司出产的sparc处理器,及x86体系机构的处理器。目前最新版本为5.10,5.3以后的版本对C语言c89、c99标准都支持。可以通过-xc99指定编译器按特定c语言标准编译。 XL C/C++是基于标准的命令行编译器,用于在基于 POWER 处理器的系统上运行的 UNIX操作系统AIX,也有linux版本。XL C/C++ 不仅使用 IBM POWER、POWER3™ 和 POWER4™转载 2011-04-04 18:16:00 · 3062 阅读 · 0 评论 -
汇编指令大全
1 MOV A,Rn 寄存器内容送入累加器 2 MOV A,direct 直接地址单元中的数据送入累加器 3 MOV A,@Ri 间接RAM 中的数据送入累加器 4 MOV A,#tata 立即数送入累加器 5 MOV Rn,A 累加器内容送入寄存器 6 MOV Rn,direct 直接地址单元中的数据送入寄存器 7 MOV Rn,#data 立即数送入寄存器转载 2010-05-26 22:42:00 · 2444 阅读 · 0 评论 -
HLSL bytecode to GLSL编译器的第一步
转载请注明出处为KlayGE游戏引擎,本文的永久链接为http://www.klayge.org/?p=1821从KlayGE 4.0开始,不但有为了下一版本开发的短期任务,还有一些中长期研发的任务。其中之一就是HLSL bytecode to GLSL编译器。现在KlayGE里的shader主要由HLSL写成,通过#ifdef的土办法兼容Cg。对D3D11来说可以直接使用,但对于Open转载 2015-11-05 19:15:55 · 2735 阅读 · 1 评论