亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你好,求問一下在匯編語言中的call是什么意思?

你好,求問一下在匯編語言中的call是什么意思?

郎朗坤 2022-03-23 18:14:34
剛剛看到一個朋友寫的病毒分析報告中,有這樣一行00409917 . E9 D2010000 jmp 00409AEE ;這個jmp跳到后面 一個地方 然后又call了回來 應該是為了獲得call函數下條指令的地址吧 ;這句話大概是什么意思,我對匯編懂得不多,新手入門
查看完整描述

3 回答

?
烙印99

TA貢獻1829條經驗 獲得超13個贊

匯編語言中CALL指令調用一個子程序,CPU執行call指令,進行兩步操作:
(1)將當前的 IP 或 CS和IP 壓入棧中;
(2)轉移到緊跟的標號行地址執行程序。
比如:
CALL InputCheck
........
InputCheck:
........
其處理步驟如下:
(1) (sp) = (sp) – 2
((ss) ×16+(sp)) = (CS)
(sp) = (sp) – 2
((ss) ×16+(sp)) = (IP)
(2) (CS) = InputCheck所在的段地址
(IP) = InputCheck所在的偏移地址

查看完整回答
反對 回復 2022-03-28
?
慕娘9325324

TA貢獻1783條經驗 獲得超4個贊

JMP是轉移指令,轉到JMP后面寫的地址
CALL也是轉移的效果,轉到CALL之后寫的標識符

查看完整回答
反對 回復 2022-03-28
?
冉冉說

TA貢獻1877條經驗 獲得超1個贊

call 標號 ;轉移到標號處,但在轉移之前將ip/cs和ip入棧
;即push ip jmp near ptr 標號/push cs push ip jmp far ptr 標號

查看完整回答
反對 回復 2022-03-28
  • 3 回答
  • 0 關注
  • 248 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號