我在一個程序中生成了下面的轉儲,只添加了兩個數字 我無法理解添加兩個數字的邏輯 在給定的代碼第6和第7行,根據我沒有任何意義請用兩行添加兩個數字的彙編程序
add ecx,00001010 6th line
and ecx,00002020 7th line
movzx ecx,%GWA+000000E0 : VAR1
movzx eax,%GWA+000000E8 : VAR2
sal ecx,08
or ecx,eax
mov eax,ecx
add ecx,00001010
and ecx,00002020
jne GLB.4
movzx ecx,%GWA+000000E0 : VAR1
movzx eax,%GWA+000000E8 : VAR2
and ecx,0F0F0F0F
and eax,0F0F0F0F
add ecx,eax
add ecx,F6F6F6F6
mov eax,ecx
and eax,60606060
shr eax,04
and ecx,0F0F0F0F
sub ecx,eax
or ecx,30303030
add ecx,10
bswap ecx
shr ecx,10
mov %GWA+0000000A,cx : TRLP+0
jmp GLB.5
@ user143252您的工作是提供適當格式的問題。如果你不這樣做,你會得到讚譽。 – fuz
它首先將0x1010添加到'ecx',然後用0x2020對'ecx'進行按位與操作。這是你不明白的部分嗎?你究竟在這裏問什麼? –
@CodyGray是的,爲什麼這是必要的? – user143252