位置: 编程技术 - 正文

(翻译)Bytecode for the Dalvik VM -General Design((翻译)你最好骑一辆共享单车)

编辑:rootadmin
Bytecode for the Dalvik VM -General Design以下所述的machine model和调用约定采用了一般架构和C语言调用约定来表述: Dalvi虚拟机是基于寄存器的,函数帧在创建时有固定的大小,每个帧包含了若干个寄存器(由函数指定)以及一些执行时所需要的附加数据,例如(但不局限于)程序计数器pc,以及包含该方法的一个.dex文件引用寄存器位宽为位,使用两个连续的寄存器来表示一个位长的值位操作的表示,(Object)null == (int) 0.函数的N个参数有序的放置于函数帧的最后N个寄存器中。宽字节参数占用两个寄存器。函数的实例使用this引用第一个参数。

推荐整理分享(翻译)Bytecode for the Dalvik VM -General Design((翻译)你最好骑一辆共享单车),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:(翻译)你最好骑一辆共享单车,(翻译)英语句子:a strong tiger,(翻译一下)英语,(翻译题,3分)如果我是你,我就呆在家里,(翻译题,3分)如果我是你,我就呆在家里,(翻译一下)英语,(翻译100%)4月21日 俄乌战事头条翻译,(翻译),内容如对您有帮助,希望把文章链接给更多的朋友!

指令流中的每个存储单元为位无符号。有些指令中的位会被忽略,或者必须为0。

指令不必要限制为某种类型,比如一个对位寄存器的mov操作指令在没有解释之前不需要指定指令是针对int还是float

有单独的枚举和有序的常量池来引用string,types,fileds,以及方法。

对literal data的位操作是内联在指令流中的。

(翻译)Bytecode for the Dalvik VM -General Design((翻译)你最好骑一辆共享单车)

由于一般一个函数不会使用超过个寄存器,而且使用8个以上的寄存器是很常见的,很多指令被限制为只能访问前个寄存器(addressing the first register).在需要的情况下,允许引用最多个寄存器。为避免一条指令无法访问一个需要的寄存器,建议将寄存器的内容从原始寄存器拷贝到一个较低位置的寄存器(在引用之前),然后在应用之后将其拷贝到一个高位寄存器

有一些“伪指令”可以包含变长数据,以供常规指令引用(比如,fill-array-data).这些指令在正常执行流中不应该出现。此外,这些指令必须出现在字节码偏移为偶数的位置(即4字节对其)。为了达到这个要求,dex生成器工具必须产生额外的nop指令作为占位符。最后,虽然不是必须的,我们期望这类dex生成器将这些nop指令放在方法的结尾,否则需要额外的指令来“环绕”它们(不是很懂,原文:it is expected that most tools will choose to emit these instructions at the ends of methods, since otherwise it would likely be the case that additional instructions would be needed to branch around them.)

在程序安装后,有些指令会被修改其格式,作为安装时的一个静态链接优化。如果链接是已知的,这样做可以允许快速执行。参见 Dalvik VM Instruction Format

可读的格式和助记

参数:先目的地址,后源地址 一些指令会包含他们操作类型的后缀:bit操作码通常含有-wide后缀。类型相关的操作通常会带有类型名后缀:-boolean -byte -char -short -int -long -float -double -object -string -class -void。普通位操作不带后缀一些指令含有反斜杠‘/’来标记其不同的指令布局和选项。这些后缀与指令名字用‘/’隔开,来保证和指令中的静态常量的一一映射并生成和翻译为可执行文件。

原文地址以及指令详细格式含义

这些小工具,让你的安卓道路顺水推舟~ 随着安卓开发的火热,目前已经有很多程序员开始进军安卓开发,当然,笔者也是其中之一。有些时候,当我们埋头苦干的写着安卓程序时,会觉得很

仿手机酷狗-音乐播放页面拖动效果 第一次写博客,希望内容大家能喜欢。今天要写的内容是仿酷狗音乐播放页面。在最新版的酷狗里,当手指向右移动时,页面会旋转,并将上一个页面

新浪微博-随便看看ListView实现 类:MainActivity主类ItemsAdapter适配器类Item实体类计算时间差的ShiJianCha类标题栏用title_bar单独的布局文件include到activity_main布局中。MainActivity主类:packagebzu.e

标签: (翻译)你最好骑一辆共享单车

本文链接地址:https://www.jiuchutong.com/biancheng/374524.html 转载请保留说明!

上一篇:androidの搭建NDK开发环境(搭建nfs)

下一篇:这些小工具,让你的安卓道路顺水推舟~(有哪些小工具)

  • 企业收到购买标书的增值税专用发票可以抵扣吗?
  • 事业单位净资产为负数怎么办
  • 印花税应计入什么账户
  • 取得社会团体会费专用票据可以税前扣除吗
  • 个人所得税减除费用6万元什么意思
  • 什么叫残保金减免
  • 电子承兑被拒付(可拒付追索)
  • 合伙开有限公司注销流程
  • 政府减免税款如何账务处理
  • 减资账务处理基准日 会计视野
  • 企业的财务报表
  • 取得增值税专用发票要算税吗
  • 进口增值税发票图片
  • 怎么核算关联企业的借款费用?
  • 政府扶持资金科目怎么做?
  • 一般纳税人支出的钱没有发票年底怎么处理
  • 实验用原材料的会计处理
  • 年中股东红利分录怎么写
  • 从农民手中购进农产品进项税
  • 跨年度取得增值税发票能否抵扣?
  • 4.86的税率怎么算
  • 固定资产折旧年限的最新规定2023
  • 租赁固定资产折旧计入
  • 企业支出的资产包括哪些
  • 哪些行业需要缴纳水利建设基金
  • 增值税专用发票的税率是多少啊
  • 一般纳税人不能转为小规模纳税人吗
  • wordpress主题dux
  • 深入php:面向对象、模式与实践
  • pps是啥文件
  • 生活常识 小常识
  • 宣告分配现金股利和股票股利的区别
  • 先预付货款,货到了怎么做账
  • 股东分红税率是20%还是25%
  • php创建多级目录的方法
  • wordpress限制ip访问
  • 赠送的物品有价值吗
  • 帝国cms功能
  • 开了红字信息表当月怎么做账
  • 过路费属于会计哪个科目
  • 发票抵扣联和发票联区别
  • 个体经营所得可以用投资人申报吗
  • 企业有什么税收
  • php mysql教程
  • 结转成本类账户及税金及附加到本年利润
  • 低值易耗品的账务处理图片
  • 增值税 附加税费
  • 银行对账单冲正的单据在财务软件哪里找
  • 非限定性净资产属于什么科目
  • 自产商品无偿赠送是否确认收入
  • 销售的差额如何分录
  • 公司注册代理费用标准
  • 坏账准备纳税调增吗
  • 受同一方重大影响的企业之间为什么不构成关联方
  • 记账凭证是什么填制的?A.由经办人
  • sqlserver1053怎么解决
  • sql优化常用的15种方法
  • win8任务管理器在哪
  • server2003定时任务
  • 使用注册表删除软件时,有些拒绝访问
  • win8.1安装过程
  • u大师教程
  • win7开始菜单在哪个文件夹
  • win7系统共享打印机设置方法
  • win10如何禁用windows defender
  • Cocos2d-js 3.x: 像素触摸
  • javascript怎么用
  • nodejs项目开发
  • 检测输入条件的各种组合
  • javascript提交数据
  • python多线程操作
  • 基于bootstrap的网站
  • android:fragment
  • 个人所得税缴纳怎么申报流程
  • 广东国税局局长是谁
  • 杭州汽车摇号中签率多少
  • 税务上门核查要看什么
  • 西乡国税局电话
  • 房子契税发票没给怎么办
  • 小微企业企业所得税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设