<s id="3nssg"><acronym id="3nssg"></acronym></s>
  • <button id="3nssg"><object id="3nssg"><input id="3nssg"></input></object></button>
    <nav id="3nssg"><big id="3nssg"><video id="3nssg"></video></big></nav>
    1. 查看: 36|回复: 0
      打印 上一主题 下一主题
      收起左侧

      [[教程/技术]] 如何动态调试来学习ARM汇编 (3) CPSR寄存器

      [复制链接]
    2. TA的每日心情
      萌哒
      前天 12:31
    3. UID 1

      钻石丨
      4

      魂币丨
      31645

      热心丨
      12243

      我的勋章

      超风侠嘤嘤棒论坛水王闪电侠至尊王

      登录后可享受更多特权和福利。

      您需要 登录 才可以下载或查看,没有帐号?立即注册

      x
      以下内容转载至吾爱【havenow】 很值得学习的文章



      当前程序状态寄存器cpsr寄存器显示出CPSR寄存器的当前值,在他的下面一行,你可以看到标志位 thumb, fast, interrupt, overflow, carry, zero, 以及 negative。这些标志位显示了CPSR寄存器中的某些特定的位,根据CPSR的值,当某个位被激活时,对应的字体会变成粗体。其中,N,Z,C和V标志位分别和x86寄存器的SF,ZF,CF和OF标志位表示的含义一一对应。这些标志位用来在汇编级别条件执行指令和循环指令中支配他们执行



      标记含义
      NNegative指令执行结果为负时置1
      ZZero指令执行结果为0时置1
      CCarry加法有进位则置1否则置0,减法有借位则置0否则置1
      Voverflow指令执行结果超出32位补码存储范围时置1
      EEndian-bit0时使用小端序,置1时使用大端序
      TThumb-bit1时使用Thumb模式,置0时使用ARM模式
      MMode-bit5位表示处理器运行模式
      JJazelle对于有的处理器,置位表示允许以硬件执行java字节码

      看看下面的代码
              .text
              .globl        main
      main:
              mov r1, #1
              mov r2, #2
              cmp r1, r2
              cmp r2, r1
              cmp r2, r2
              bx lr

      假设我们用cmp指令来比较1和2,结果将为负,Negative标志位被置1。因为cmp指令执行一次隐式的减法操作,1-2=-1。



      如果我们比较2和1(和刚才相反),减法操作不借位,Carry标志位被置1。


      如果我们比较两个相同的数,比如2和2,那么2-2=0,在Carry标志位置1的同时,Zero标志位也被置1。

      帖子永久地址: 

      {魂影网络} - 论坛版权   ①:本主题所有言论和图片纯属会员个人意见,与本论坛立场无关。

         ②:帖子有违反论坛版规,管理员和版主有权不事先通知发贴者而删除本文。

         ③:帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任。

         ④:本站资源于网络收集存储,任何资源只做于保存储存,防止原资源丢失或删除。

         ⑤:如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。

         ⑥:本站内容均为网络分享资源,如有什么法律责任均和本站无任何关系,本站只做于资源收集储存。

      本站不参与第三方工具制作和售卖,只做于分享储存资源。
      您需要登录后才可以回帖 登录 | 立即注册

      本版积分规则

      QQ|手机版|小黑屋|魂影辅助论坛 ( 浙ICP备16020365号-1 )|网站地图

      GMT+8, 2021-4-22 07:33 , Processed in 0.285720 second(s), 28 queries , Gzip On.

      Powered by Discuz! X3.4 Licensed

      © 2001-2017 Comsenz Inc.

      免费特黄特黄的欧美大片