日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java 乘法 位移_java 位移运算与乘法运算

發布時間:2025/1/21 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 乘法 位移_java 位移运算与乘法运算 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于

JAVA

編程中,適當的采用位移運算,會減少代碼的運行時間,提高項目的運行效率。這個可以從一道面試題說起:

問題:

用最有效率的方法算出2

乘以8

等於幾?”

答案:2 << 3

由此就引發了我的思考,為什么位移運算會比乘法運算更快呢?其實簡單的想想,計算機的內存是用由

0

1

組成的二進制數據形式來表示數據的,對于乘法運算,我想內部應該還會轉化成位移運算。

下面用一個例子來驗證上面的正確性。

例子:

public class Demo2 {

public static void main(String[] args){

Demo2 d = new Demo2();

d.method1();

d.method2();

}

public void method1(){

long start = System.nanoTime();

int i = 100;

int j = i*2;

System.out.println("乘法運算耗時:"+(System.nanoTime()-start));

}

public void method2(){

long start = System.nanoTime();

int i = 100;

int j = i<<1;

System.out.println("位移運算耗時:"+(System.nanoTime()-start));

}

}

輸出:

乘法運算耗時

:46114

(單位納秒)

位移運算耗時

:8016

(單位納秒)

同時我簡化上面的代碼:

public class Demo2 {

public void method1(){

int i = 100;

int j = i*2;

}

public void method2(){

int i = 100;

int j = i<<1;

}

}

E:\>javac

Demo2.java

E:\>javap

-verbose Demo2 >> Demo.txt

查詢字節碼信息:

……

public void method1();

Code:

Stack=2, Locals=3, Args_size=1

0:bipush100

2:istore_1

3:iload_1

4:iconst_2

5:imul

6:istore_2

7:return

LineNumberTable:

line 7: 0

line 8: 3

line 9: 7

public void method2();

Code:

Stack=2, Locals=3, Args_size=1

0:bipush100

2:istore_1

3:iload_1

4:iconst_1

5:ishl

6:istore_2

7:return

LineNumberTable:

line 12: 0

line 13: 3

line 14: 7

}

從區別來看,位移運算調的是

ishl

(將

int

型數值左移位指定位數并將結果壓入棧頂)指令,乘法運算調的是

imul

(將棧頂兩

int

型數值相乘并將結果壓入棧頂)指令。

整數乘法或整數除法所需要的時鐘周期遠遠大于移位操作所需的時鐘周期,下面列出這個指令的基本執行時間:

移位指令

寄存器移

1

時鐘周期數為

2

整數乘法

IMUL

16

位寄存器乘

時鐘周期為

128 ~ 154

整數除法

IDIV

16

位寄存器

時鐘周期為

165 ~ 184

如果再要深究為什么,就要研究寄存器和電路圖了的知識了

點到為止

..

參考資料:

http://www.programfan.com/blog/article.asp?id=32217

http://blog..net/kypfos/article/details/810151

http://budairenqin.iteye.com/blog/1565750

總結

以上是生活随笔為你收集整理的java 乘法 位移_java 位移运算与乘法运算的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 91丝袜美女 | 国产999在线| 椎名由奈av一区二区三区 | 国产福利在线观看视频 | 国产精品一区二区无线 | 99热r| 日本啪啪动态图 | 黄色aa大片 | 男人操女人的软件 | 高跟91娇喘 | 自拍视频一区 | 露脸丨91丨九色露脸 | 国产一级性生活 | 人成午夜| 国产亚洲成av人在线观看导航 | 欧美啪啪一区二区 | 亚洲精品无码久久久久 | 精品人妻天天爽夜夜爽视频 | 香蕉视频免费网站 | 国产夜夜夜 | 日韩视频网 | 操一操视频 | 亚洲午夜精品一区二区三区 | 亚洲国产精品久久久 | 久久久社区 | 91爱| 俺也去婷婷 | 亚洲爽妇网 | 成人av视屏 | 中文字幕23| 亚洲国产美女视频 | 禁漫天堂黄漫画无遮挡观看 | 91原创视频 | 五月天小说网 | 亚洲成在线观看 | 天堂在线视频 | 综合 欧美 亚洲日本 | av片网站| 日本三级一区二区 | 福利片网址 | 在线观看黄色片网站 | 成人免费毛片男人用品 | 午夜精品久久久久久久久久久久久蜜桃 | 精品国产一区二区三区噜噜噜 | 天堂在线观看视频 | 色臀av| 欧美aaaaaa| 中国亚洲女人69内射少妇 | 国产特级淫片免费看 | 欧美日韩亚洲激情 | 91视频免费入口 | 口爆吞精一区二区三区 | 亚色在线观看 | 91精品一区二区三区在线观看 | 无码精品在线观看 | 日日夜夜2017 | 美女福利在线 | 天操夜夜操 | jizz国产| 日本久久黄色 | 国产99re | 精品一区二区三区久久 | 少妇自拍视频 | ⅹxxxxhd亚洲日本hd老师 | 国产美女福利视频 | 欧美日韩国产在线一区 | 秋霞福利| 蜜桃av在线免费观看 | 中国特级黄色大片 | 日本欧美一级片 | 永久免费av无码网站性色av | 国产成人黄色av | 奇米第四色在线 | 欧美大肚乱孕交hd孕妇 | 欧美日韩色片 | 亚洲色图14p | 成人日韩精品 | 国产3p露脸普通话对白 | 日本午夜影院 | 欧美精品久久久久 | 欧美视频精品 | 日韩电影一区二区三区 | 日韩有码中文字幕在线 | 色图综合网 | 欧美日韩免费高清一区色橹橹 | 一区二区在线国产 | 一区二区三区四区中文字幕 | 椎名由奈在线观看 | 国产高清毛片 | 国产综合欧美 | 亚洲精品乱码久久久久久蜜桃欧美 | 日韩高清一级 | 91麻豆成人精品国产免费网站 | 一本久久道 | 九九热九九 | 91传媒视频在线观看 | 亚洲午夜无码av毛片久久 | 超碰在线看 | 国产一区二区在线看 |