国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

And、Or和Xor:讓我們來優化表達式

2019-11-18 17:30:20
字體:
來源:轉載
供稿:網友

要檢測一個整數值的最高有效位是否有數值,通常要使用如下的代碼(有二種情況:第一組If判斷表明對Integer類型,第二組對Long類型):

IfintValueAnd&H8000Then

'mostsignificantbitisset

EndIf

IflngValueAnd&H80000000Then

'mostsignificantbitisset

EndIf

但由于所有的VB變量都是有符號的,因此,最高有效位也是符號位,不管處理什么類型的數值,通過下面的代碼就可以實現檢測目的:

IfanyValue<0Then

'mostsignificantbitisset

EndIf

另外,要檢測2個或者更多個數值的符號,只需要通過一個Bit位與符號位的簡單表達式就可以完成。下面是應用這個技術的幾段具體代碼:

1、判斷X和Y是否為同符號數值:

If(x<0Andy<0)Or(x>=0Andy>=0)Then...

'theoptimizedap

If(xOryOrz)=0Then...

要使用這些來簡單化一個復雜的表達式,必須要完全理解boolean型的操作原理。比如,你可能會認為下面的2行代碼在功能上是一致的:

Ifx<>0Andy<>0Then

If(xAndy)Then...

然而我們可以輕易地證明他們是不同的,比如X=3(二進制=0011),Y=4(二進制=0100)。不過沒有關系,遇到這種情況時,我們可以對上面的代碼進行局部優化,就能實現目的。代碼如下:

If(x<>0)AndyThen...

->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 遂溪县| 化州市| 中方县| 札达县| 开远市| 射阳县| 台安县| 金平| 电白县| 安康市| 莒南县| 股票| 衡阳市| 天峻县| 黑龙江省| 陇西县| 康平县| 长海县| 温宿县| 武宣县| 宣汉县| 洛宁县| 灵武市| 黔东| 高清| 宣汉县| 伊通| 临汾市| 泽库县| 兴文县| 红原县| 碌曲县| 闻喜县| 淮北市| 红安县| 嘉善县| 汕尾市| 宁安市| 利津县| 乐至县| 于田县|