BL.W表示该指令为32位指令,单独用BL 可能是16位的,也可能是32位,Keil为了区分 反汇编时 用BL.W 表示 32位,BL表示16位。
汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编程序把汇编语言翻译成机器语言的过程称为汇编。
BL是arm汇编中用来调用子程序的指令,它把BL后面一条指令的地址放到R14寄存器里,R15寄存器(PC当前指针地址)就设置成要跳往的地址。这样在这个子程序返回时,再mov PC, R14就可以返回到BL后面的地址了。你这句有没有弄错,
表示该指令为32位指令,单独用BL 可能是16位的,也可能是32位,Keil为了区分 反汇编时 用BL.W 表示 32位,BL表示16位
单独用BL 有2种可能的情况:1 、16位 2、32位
使用Keil是为了区分 反汇编时 用BL.W 表示 32位
表示32位指令,可以取到R1-R12