当前位置: 首页 > news >正文

网站鼠标特效代码哪些网站是jsp做的

网站鼠标特效代码,哪些网站是jsp做的,wordpress生成的html代码,wordpress 3.5 基础教程文章目录1 MIPS简介2 MIPS指令系统的特点3 MIPS寄存器4 MIPS指令格式4.1 R-Type型指令4.2 l-Type型指令4.3 J-Type型指令4.4 三类指令小结5 MIPS例题6 MIPS过程调用6.1 过程调用和栈6.2 MIPS中栈的实现6.3 栈帧的概念6.4 MIPS中的过程调用#xff08;假定P调用Q#xff09;6.… 文章目录1 MIPS简介2 MIPS指令系统的特点3 MIPS寄存器4 MIPS指令格式4.1 R-Type型指令4.2 l-Type型指令4.3 J-Type型指令4.4 三类指令小结5 MIPS例题6 MIPS过程调用6.1 过程调用和栈6.2 MIPS中栈的实现6.3 栈帧的概念6.4 MIPS中的过程调用假定P调用Q6.5 过程调用举例1 MIPS简介 MIPS是Microcomputer without interlocked pipeline stages的缩写含义是无互锁流水级微处理器。MIPS采用的是精简指令系统计算结构RISC结构与之对应的复杂指令集CISC结构。RISC比CISC的设计更加简单由于其授权费用低被INTEL外的大多数厂商使用。同时在设计理念上MIPS强调软硬件协同提高计算机性能并简化硬件设计。 MIPS 是最早的最成功的RISC处理器之一MIPS处理器广泛的应用于数字电视、机顶盒、蓝光播放器、游戏机、网络设备。 2 MIPS指令系统的特点 指令的类型较少指令的复杂度较低这些特点使得CPU运行的更快用标号、变量名称、寄存器名称、常数表示操作数或地址码。 固定的指令长度32-bit即1word 简化了从存储器取指令 简单的寻址模式 简化了从存储器取操作数 指令数量少指令功能简单一条指令只完成一个操作 简化指令的执行过程 只有Load和Store指令可以访问存储器 例如不支持×86指令的这种操作ADD AX[3000H] 3 MIPS寄存器 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的)(saved)$24-$25$t8-$t9暂时的(或随便用的)$28$gp全局指针(Global Pointer)$29$sp堆栈指针(Stack Pointer)$30$fp帧指针(Frame Pointer)$31$ra过程调用返回地址(return address) 1两个特殊寄存器 $0不管你存放什么值其返回值永远是零。 $31永远存放着正常函数调用指令(jal)的返回地址。 2$at 由编译器生成的复合指令使用 3$v0, $v1 用来存放一个子程序 (函数) 的非浮点运算的结果或返回值。如果这两个寄存器不够存放需要返回的值编译器将会通过内存来完成。 4$ a0-a3 用来传递子函数调用时前4个非浮点参数。 5$ t0-t9: 依照约定一个子函数可以不用保存并随便的使用这些寄存器。在作表达式计算时这些寄存器是非常好的暂时变量。当调用一个子函数时这些寄存器中的值有可能被子函数破坏掉。所以也是最不安全的。 6$ s0-s8: 依照约定子函数必须保证当函数返回时这些寄存器的内容必须恢复到函数调用以前的值 或者在子函数里不用这些寄存器或把它们保存 在堆栈上并在函数退出时恢复。 这种约定使得这些寄存器非常适合作为寄存器变量、 或存放一些在函数调用期间必须保存的原来的值。类比x86汇编中的函数序言和函数尾声 7$ k0, k1: 被OS的异常或中断处理程序使用。被使用后将不会恢复原来的值。因此它们很少在别的地方被使用。 8$gp: 如果存在一个全局指针它将指向运行时决定的静态数据(static data)区域的一个位置。这意味着利用gp作基指针在gp指针32K左右的数 据存取系统只需要一条指令就可完成 9$ sp: 堆栈指针的上下需要显 式的通过指令来实现。因此 MIPS通常只在子函数进入和 退出的时刻才调整堆栈的指针。 这通过被调用的子函数来实现。SP通常被调整到这个被调用 的子函数需要的堆栈的最低的地方从而编译器可以通过相对sp的偏移量来存取堆栈上的堆栈变量。 10$ fp另外的约定名是s8: fp作为框架指针可以被函数用来记录堆栈的情况在一 个过程中变量相对于函数指针的偏移量是不变的。相对地址一些编程语言显示的支持这一点。汇编编程员经常会利用fp的这个用法。C语言的库函数 alloca()就是利用了fp来动态调整堆栈的。 11$ ra: 当调用任何一个子函数时返回地址存放在ra寄存器中因此通常 一个子程序的最后一个 指令是 jr ra.子函数如果还要调用其他的子函数必须保存ra的值通常通过堆栈。 12其他方面 MIPS里没有状态码。CPU状态寄存器或内 部都不包含任何用户程序计算的结果状态信息。 hi 和 lo 是与乘法运算器相关的两个寄存器是用来存放结果的地方。 它们并不是通用寄存器除了用在乘除法之 外也不能有做其他用途。 MIPS里定义了一些指令可以往hi和lo里存入任何值。 浮点运算协处理器 (浮点加速器FPA)如果存在的话有32个浮点寄存器。按汇编语言的简单约定讲 是从$ f0到$f31。 4 MIPS指令格式 所有指令都是32位宽须按字地址对齐字地址为4的倍数有三种指令格式 4.1 R-Type型指令 R-Type一条32位的MIPS R型指令按下表bit数划分为 6个字段6 5 5 5 5 6 32bit 1R型指令一共有6个域 2shamt字段表示的是移位操作的位数 3R指令中opcode的值一般是000000操作类型由funct字段指定 4目的操作数是用来保存运算结果的操作数送寄存器rd 5R型指令的寻址方式仅仅一种就是寄存器寻址。两个操作数和结果都在寄存器的运算指令。 实例 add $8, $17, $18 $8 $17 $18 第一个操作数是寄存器 $17,第二个寄存器是 $18,目的寄存器结果是 $8.该指令没有移位。 因为加法是运算指令指令操作类型码op是0funct是32。 所以格式是 0$17$18$8032 4.2 l-Type型指令 l-Type立即数型指令。6551632bit I-型指令分类装入/存储指令、分支指令和 立即数运算指令 运算指令一个寄存器、一个立即数。如ori rtrsimm16Immediate立即数 LOAD和STORE指令。如lw rtrsimm16 条件分支指令。如beqrsrtimm16 4.3 J-Type型指令 J-Type无条件跳转指令。62632bit。 4.4 三类指令小结 R:Register寄存器I:Immediate立即数J:Jump无条件转移 OP操作码rs第一个源操作数寄存器rt第二个源操作数寄存器rd结果寄存器shamt移位指令的位移量func:R-Type指令的OP字段是特定的“000000”具体操作由func字段给定。例如func“100000”时表示“加法”运算。 操作码的不同编码定义不同的含义操作码相同时再由功能码定义不同的含义 immediate立即数或load/store指令和分支指令的偏移地址target address无条件转移地址的低26位。将PC高4位拼上26位直接地址最后添2个“0”就是32位目标地址。为何最后J-型指令最后两位要添“0” 回答指令按字地址对齐所以每条指令的地址都是4的倍数最后两位为0。 5 MIPS例题 若从存储器取来一条指令为00AF8020H则对应的汇编形式是什么 32位指令代码0000 0000 1010 1111 1000 0000 0010 0000 指令的前6位为000000根据指令解码表知是一条R-Type指令按照R-Type指令的格式划分 得到rs00101rt01111rd10000shamt00000funct100000。根据R-Type指令解码表知是“add”操作非移位操作rs、rt、rd的十进制值分别为5、15、16从MIPS寄存器功能表知 rs、rt、rd分别为$ a1、$ t7、$ s0 故对应的汇编形式为add $ sq$ a1St7 功能Sa1St7→$s0 这个过程称为“反汇编”可用来破解他人的二进制代码可执行程序 若MIPS Assembly Instruction:Add $ t0$ s1$ s2则对应的指令机器代码是什么 从助记符表中查到Add是R型指令即 转化为寄存器单元和二进制指令 MIPS中最重要的寄存器及其编号与功能与其助记 6 MIPS过程调用 引出问题过程调用对应的机器代码如何表示 如何从调用程序把参数传递到被调用程序如何从调用程序执行转移到被调用程序执行如何从被调用程序返回到调用程序执行并把返回结果传递给调用程序如何保证调用程序中寄存器内容不被破坏 6.1 过程调用和栈 过程调用的执行步骤假定过程P调用过程a 1将参数放到Q能访问到的地方 2将P中的返回地址存到特定的地方将控制转移到过程Q 3为Q的局部变量分配空间局部变量临时保存在栈中 4执行过程Q 5将Q执行的返回结果放到P能访问到的地方 6取出返回地址将控制转移到P即返回到P中执行 12在调用过程P中完成3456在被调用过程Q中完成。 如果过程中用到的参数超过4个返回值超过2个怎么办 更多的参数和返回值要保存到存储器的特殊区域中这个特殊区域为栈Stack栈的基本概念 是一个“先进后出”队列需一个栈指针指向栈顶元素每个元素长度一致用“入栈”push和“出栈”pop操作访问栈元素 6.2 MIPS中栈的实现 用栈指针寄存器$sp来指示栈顶元素每个元素的长度为32位即一个字4个字节“入栈”和“出栈”操作用sw/lw指令来实现需用add/sub指令调整$sp的值不能像×86那样自动进行栈指针的调整 有些处理器有专门的push/pop指令能自动调整栈指针。如×86栈生长方向 从高→低地址“增长”而取数/存数的方向是低→高地址大端方式 每入栈1字$sp-4→$sp每出栈1字$sp4→$sp 6.3 栈帧的概念 各过程有自己的栈区称为栈帧Stack frame即过程的帧procedure frame栈由若干栈帧组成用专门的帧指针寄存器指定起始位置当前栈帧范围在帧指针和栈指针之间程序执行时栈指针可移动帧指针不变。所以过程内对栈信息的访问可通过帧指针进行复杂局部变量一定分配在栈帧中 6.4 MIPS中的过程调用假定P调用Q 程序可访问的寄存器组是所有过程共享的资源给定时刻只能被三个过程使用因此过程中使用的寄存器的值不能被另一个过程覆盖MIPS的寄存器使用约定 1保存寄存器$s0~$s7的值在从被调用过程返回后还要被用被调用者需要保留 2临时寄存器$t0~$t9的值在从被调用过程返回后不需要被用需要的话由调用保存被调用者可以随意使用 3参数寄存器$a0~$a3在从被调用过程返回后不需要被用需要的话由调用者保存在栈帧或其他寄存器中被调用者可以随意使用 4全局指针寄存器$gp的值不变 5帧指针寄存器$fp用栈指针寄存器$sp-4来初始化 需在被调用过程Q中入栈保存的寄存器称为被调用者保存 1返回地址$ra如果Q又调用R则$ra内容会被破坏故需保存 2保存寄存器$s0~$s7Q返后P可能还会用到Q中用的话就被破坏故需保存 除了上述寄存器以外所有局部数组和结构等复杂类型变量也要入栈保存如果局部变量和临时变量发生寄存器溢出寄存器不够分配则也要入栈 6.5 过程调用举例 假定swap作为一个过程被调用temp对应$t0变量v和k分别对应$a0和$a1。写出对应的MIPS汇编代码。 swap(int v[],int k) {int temp; tempv[k]; v[k]v[k1];v[k1]temp; }sll $s2,$a1,2 //mulitply k by 4 int类型k是下标乘4→左移两位 add $s2 $s2,$a0; //address of v[k] k的地址 lw$to,0($s2); //load v[] lw$s3,4($s2); //load v[k1] sw$s3,0($s2); //store v[k1] into v[k] swSt0,4($s2); //store old v[k] into v[k1]
http://wiki.neutronadmin.com/news/7398/

相关文章:

  • 哈尔滨市建筑企业管理站wordpress怎么用外链
  • 龙岗企业网站设计公司.net网站服务器
  • 企业网站案列湖南3合1网站建设电话
  • 公司培训网站建设寿光企业建站流程
  • 福州免费自助建站模板如何让产品吸引顾客
  • 标识标牌网站怎么做wordpress做第二个
  • 万江建筑培训中心四川网站seo
  • 剑网三魁首怎么做网站内蒙古建设工程造价信息网官网信息价
  • 汉庭酒店网站建设方案免费用手机制作网站 百度百
  • 苏州海外建站公司网站开发前台实训
  • 河北网站制作多少钱代做毕网站
  • 学做网站论坛视频下载南京城乡建设局网站首页
  • 陕西网站备案查询请简要描述如何进行网站设计规划
  • 网站管理助手v3做办公用品网站工作计划
  • 网站建设 云南wordpress设置固定链接伪静态
  • 接单网站开发东莞网站建设网络公司公司
  • 免备案网站空间购买网站设计公司排行
  • 网站开发技术栈房屋 哪个网站做的最好
  • 外行学习个人网站建设页面设计稿
  • 合肥集团网站建设哪个好wordpress安装插件502
  • 免费域名申请网站空间ui设计做网站
  • .net 网站域账号自动验证码云南网站建设价格
  • 网站建设服务 杭州营销自动化是什么意思
  • 江西住房和城乡建设信息网站陕西网站建设培训
  • 帮别人做网站赚钱6官方网站建设银行信用卡
  • 粉红色网站欣赏wordpress 腾讯云存储
  • 太原网站搜索优化wordpress注册表格
  • 东莞新闻头条新闻百度推广整体优化网站
  • 智能建站软件哪个好网站权重有什么用
  • 播放swf文件 自动弹出网站怎么做招聘网站的数据分析