作者typeotoco (打字男)
看板ASM
標題[問題] 請問jmp指令
時間Sat Jun 23 15:20:31 2007
以下指令
jmp $+2
pop eax
xor ax,ax
mov ds,ax
mov es,ax
請問 $+2 是什麼意思? 是跳兩行嗎?
書上找不太到,感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.70.34
1F:推 wuzen:這邊是指跳到pop eax 那邊去執行 06/23 16:19
2F:推 loveflames:是現在這個位址+2個byte 06/23 19:11
3F:推 typeotoco:jmp下一行不就是 pop? 那這邊的用法不就沒意義囉? 06/23 20:36
4F:→ typeotoco:順便問一下 一個指令幾個byte是如何算法呢? 06/23 20:38
5F:推 final01:我記得是要查指令格式~要找程式設計師手冊~每種cpu不同 06/25 16:08
6F:推 ruemann:大致上是用來做delay的,不然通常要寫好幾個nop才有相同 07/04 03:17
7F:→ ruemann:的delay時間。另外每個指令大小要找datasheet看。 07/04 03:18
8F:→ ruemann:以8051而言,就有1~3bytes的差異,不過一些risc的cpu是 07/04 03:18
9F:→ ruemann:把指令大小都做成一樣 07/04 03:18