摘要: 指令长度和寄存器个数 MIPS的所有指令都是32位的,指令格式简单。不像x86那样,x86的指令长度不是固定的,以80386为例,其指令长度可从1字节(例如PUSH)到17字节,这样的好处代码密度高,所以MIPS的二进制文件要比x86的大大约20%~30%。而定长指令和格式简单的好处是易于译码和更符合流水线操作,由于指令中指定的寄存器位置是固定的,使得译码过程和读指令的过程可以同时进行,即固定字段译码。32个通用寄存器,寄存器数量跟编译器的的要求有关。寄存器分配在编译优化中是最重要的优化之一(也许是做重要的)。现在的寄存器分配算法都是基于图着色的技术。其基本思想是构造一个图,用以代表分配寄存器 阅读全文
posted @ 2012-08-16 23:59 dzqabc 阅读(5999) 评论(0) 推荐(1)
摘要: MIPS有32个通用寄存器($0-$31),各寄存器的功能及汇编程序中使用约定如下:下表描述32个通用寄存器的别名和用途;REGISTERNAMEUSAGE$0$zero常量0(constant value 0)$1$at保留给汇编器(Reserved for assembler)$2-$3$v0-$v1函数调用返回值(values for results and expression evaluation)$4-$7$a0-$a3函数调用参数(arguments)$8-$15$t0-$t7暂时的(或随便用的)$16-$23$s0-$s7保存的(或如果用,需要SAVE/RESTORE的)(sa 阅读全文
posted @ 2012-08-16 23:56 dzqabc 阅读(14016) 评论(0) 推荐(2)
摘要: 最近发现有些朋友一老问IF命令的用法,IF命令个人觉得很简单,所以就一直没把发放到新手教学贴里说,现在我给补上一文,希望对各位"非常BAT的"新手朋友们有所帮助.现在开始:在CMD使用IF/?打开IF的系统帮助(自己看我就不全部列出来了),IF[NOT]ERRORLEVEL number commandIF[NOT]string1==string2 commandIF[NOT]EXIST filename command首先来讲第一种用法IF[NOT]ERRORLEVEL number command这个用法的基本做用是判断上一条命令执行结果的代码,以决定下一个步骤.一般上 阅读全文
posted @ 2012-08-16 22:39 dzqabc 阅读(1556) 评论(0) 推荐(0)
摘要: 会打开注册表编辑器。在注册表编辑器左边列表依次 展开:HKEY_CURRENT_USER>Software>Microsoft>Windows>CurrentVersion>Applets最后选中StickyNotes然后在右边列表,双击PROMPT_ON_DELETE,在弹出的框里,如果只有一个0,把0改成 1,如果有很多个0,则把最后一个0改成1,确定后退出。重启一下便签,删除便签的提示就回来了。 阅读全文
posted @ 2012-08-16 21:59 dzqabc 阅读(282) 评论(0) 推荐(0)