congratulation, my vs casm compiler is run ok !
花了一周的时间才把汇编器写好和调好,终于可以开始写代码了。祝贺一下。每天下班了才做这个,郁闷呀。肚子饿饿呀,出去吃饭,回去继续写我的论文。晕,有多少事情要干!
目前支持61条指令。有时间移植到windows下,好做我的系统级的混合仿真呀。
vertex shader asm compiler
现在正在写linux下的指令编译器,后面会移植到windows上。下面记录一些需要的移植资料,方便后面查找。
STL中map用法详解
分类:std map
部分文章来自于网络,如有侵权请联系站长,以便及时卸下来
//
google_ad_client = “pub-8491305208851395″;google_ad_slot = “0333958542″;google_ad_width = 468;google_ad_height = 60;
//
std map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下std map内部数据的组织,std map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在std map内部所有的数据都是有序的,后边我们会见识到有序的好处。 下面举例说明什么是一对一的数据映射。比如一个班级中,每个学生的学号跟他的姓名就存在着一一映射的关系,这个模型用map可能轻易描述,很明显学号用 int描述,姓名用字符串描述(本篇文章中不用char *来描述字符串,而是采用STL中string来描述),下面给出map描述代码: Map<int, string> mapStudent; 1. map的构造函数 map共提供了6个构造函数,这块涉及到内存分配器这些东西,略过不表,在下面我们将接触到一些map的构造方法,这里要说下的就是,我们通常用如下方法构造一个map: Map<int, string> mapStudent; 2. 数据的插入 在构造map容器后,我们就可以往里面插入数据了。这里讲三种插入数据的方法: 第一种:用insert函数插入pair数据,下面举例说明(以下代码虽然是随手写的,应该可以在VC和GCC下编译通过,大家可以运行下看什么效果,在VC下请加入这条语句,屏蔽4786警告 #pragma warning (disable:4786) ) #include <map> #include <string> #include <iostream> Using namespace std; Int main() { Map<int, string> mapStudent; mapStudent.insert(pair<int, string>(1, [...]
AT-EGPU中的VERTEX SHADER的指令
AT-EGPU中的VERTEX SHADER的指令
目前设计的VERTEX SHADER,因为只支持gles1.1,所以数据结构都选用顶点格式。现在设计指令长度64bit。 分三类SIMD指令 1) mov,add,sub,max,min,sge,slt,seq,lsl,asr.zero,xor,or,and,nop,end 2) mul,mad,dp2,dp3,dp4,trfm 3) rcp,rsq,pow2,log2 指令应该还会添加别的,以快速实现clipping操作。 指令结构如下: opcode|adr mode|write mask| swizzle|neg|dst |src0 bank|src1 bank|src2 bank|DstSat|SRC0 ADR|SRC1 ADR|SRC2 ADR|reserver| 5bit |2bits |4bit |16bit |3bit|6bit|2bit |2bit |2bit |1bit |4 or 8bit |4 or 8bit |4 or 8bit |5bit | 目前还差rcp,rsq,pow2,log2指令的实现。准备采用查表实现。现在研究<digital arithmatic>这本书,还有一些paper,看选用哪种结构更合理。
