日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

汇编语言的相对跳转和绝对跳转以及反汇编代码解析

發布時間:2023/11/30 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汇编语言的相对跳转和绝对跳转以及反汇编代码解析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

上圖第一行的b1 main為相對跳轉,即跳轉到pc+offset,其中pc為當前pc值,offset可以理解為偏移地址,也就是根據當前所在地址加上偏移地址實現跳轉,為相對跳轉。

我們來看看它的反匯編代碼

上圖清除完bss區后使用b1指令跳轉到30000668,要注意b1是相對跳轉指令,后面寫著30000668并不是說一定跳轉到這個地址,這里之所以寫出這個地址是方便我們看而已,如果在程序運行時我們當前的pc值為000000a0,那么則是跳轉到00000668。

?

?

?

下面我們再來看ldr pc, =main,該指令為絕對跳轉指令,我們可以通過反匯編來查看:下圖的第一行ldr pc, [pc, #28],把pc的值賦為pc當前值+28的地址里的內容,也就是300000c4地址里的內容3000066c,也就是把pc指向main函數的地址,為絕對跳轉。

?

總結

以上是生活随笔為你收集整理的汇编语言的相对跳转和绝对跳转以及反汇编代码解析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。