Smali语法学习六

#回顾 语法学习五中就有如下的数据定义:

1move v0,p1 #赋值,v0=v1 2const/4 v1,0x1 #定义常量,v1=1 3const-string v2,"MainActivity" #定义常量字符串,v2="MainActivity" 4.local v1,"b1":Z #定义局部变量,寄存器声明

#数据定义DEMO java代码:

1private void test(){ 2 int a = 1; 3 int b = 7; 4 int c = 254; 5 int d = 2345; 6 int d1 = 65538; 7 long e = 12435465657677L; 8 float f = 123235409234.09097945F 9 double g = 111343333454999999999.912384376; 10}

对应的smali代码:

1.method private test()V 2 .locals 10 3 .prologue 4 .line 49 5 const/4 v0,0x1 #int a=1 6 7 .line 50 8 .local v0,"a":I 9 const/4 v1,0x7 #int b=7 10 11 .line51 12 .local v1,"b":I 13 const/16 v2,0xfe #int c =254 14 15 .line 52 16 .local v2,"c":I 17 const/16 v3,0x929 #int d=2345 18 19 20 .line 53 21 .local v3,"d":I 22 const v4,0x10002 #int d1=65538 23 24 .line 55 25 .local v4,"d1":I 26 const wide v6,0xb4f5b835d4dl #llong e = 12435465657677L 27 28 .line 56 29 .local v6,"e":J 30 const v5,0x51e58b39 #float f = 123235409234.09097945F 31 32 .line 57 33 .local v5,"f":F 34 const-wide v8,0x441824cbef6b9491L #1.11343333455E20 35 36 .line 58 37 .local v8,"g":D 38 return-void 39.end method

#数据定义格式 const/4 vA,#+B 将数组扩展为32位后赋给寄存器vA
const/16 vAA,#+BBBB
const vAA,#+BBBBBBBB 将数组赋给寄存器vAA
const-wide/16 vAA,#+BBBBB 将数值扩展为64 位后赋给寄存器vA
const-string vAA,string@BBBB 将字符串索引构造一个字符串并赋给vAA
const-class vAA,type@BBBB 通过类型索引获取一个类的引用并赋给vAA

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

swap空间的增减方法

(1)增大swap空间去激活swap交换区:swapoff v /dev/vg00/lvswap扩展交换lv:lvextend L 10G /dev/vg00/lvswap重新生成swap交换区:mkswap /dev/vg00/lvswap激活新生成的交换区:swapon v /dev/vg00/lvswap