日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Win32ASM学习[2]:运算符

發布時間:2023/12/1 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Win32ASM学习[2]:运算符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?

算術運算符

?名稱??

優先級

()

圓括號?

1

+,-

正、負

2

*,/

乘、除

3

MOD

取模

3

+,-

加、減

4

?

------------------------------------------------------------------------------------------------------------------------------------------

.386
.modelflat,
stdcall

include
?? windows.inc

include
?? kernel32.inc
include
?? masm32.inc
include
?? debug.inc
includelib
kernel32.lib
includelib
masm32.lib
includelib
debug.lib

.code
start:
??? PrintDec 7 + 3???????? ?;10
??? PrintDec 7 - 3??????????;4
??? PrintDec 7 * 3?????? ?? ;21
??? PrintDec 7 / 3??????????;2
??? PrintDec 7 mod 3????;1
??? PrintDec 7 / 3 + 4?? ?;6
??? PrintDec 7 / (3 + 4)? ;1
??? ret
end
start

------------------------------------------------------------------------------------------------------------------------------------------

;EQ: 等于
;NE: 不等于

;LT: 小于
;LE: 小于等于

;GT: 大于
;GE: 大于等于

?

邏輯操作符(AND、OR、XOR、NOT)

?

高低分離符(HIGH、LOW、HIGHWORD、LOWWORD)

------------------------------------------------------------------------------------------------------------------------------------------
.386
.modelflat,
stdcall

include
?? windows.inc

include
?? kernel32.inc
include
?? masm32.inc
include
?? debug.inc
includelib
kernel32.lib
includelib
masm32.lib
includelib
debug.lib

.code
start:
??? PrintHex high??? ???? 1122h ;11
??? PrintHex low??? ????? 1122h ;22
??? PrintHex high???? 11223344h ;33
??? PrintHex low????? 11223344h ;44
??? PrintHex highword 11223344h ;1122
??? PrintHex lowword? 11223344h ;3344
??? ret
end
start


移位運算符(SHL、SHR)

.386
.modelflat,
stdcall

include
?? windows.inc

include
?? kernel32.inc
include
?? masm32.inc
include
?? debug.inc
includelib
kernel32.lib
includelib
masm32.lib
includelib
debug.lib

.code
start:
??? PrintHex 12345678h shl 4 ;23456780
??? PrintHex 12345678h shl 8 ;34567800
??? PrintHex 12345678h shr 4 ;01234567
??? PrintHex 12345678h shr 8 ;00123456
??? ret
end
start

------------------------------------------------------------------------------------------------------------------------------------------

以上運算符(或偽指令)有些和匯編(硬)指令重名, 區別在于它們只用于常數表達式, 并在編譯期出結果.

偽指令? (硬)指令?
MASM 的偽指令是 MASM 提供的, 它們告訴編譯期如何編譯, 其作用在生成 obj 文件之前;
(硬)指令是 CPU 提供的, 都有對應的二進制碼, 它們作用在程序運行時.

?

總結

以上是生活随笔為你收集整理的Win32ASM学习[2]:运算符的全部內容,希望文章能夠幫你解決所遇到的問題。

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