[問題]請問哪個是x*7 最快的implement方法

作者: j7210429 (~å½±~)   2016-08-18 14:40:32
最近被問到這題: 以下哪一個是x*7最快的implement方法
(1)x+x+x+x+x+x+x
(2)x*7
(3)x<<3-x
我覺得是(3),但不太確定,請問各位高手有甚麼想法,謝謝。
作者: johnlinvc (阿翔)   2016-08-18 15:00:00
看用哪個Compiler
作者: azureblaze (AzureBlaze)   2016-08-18 15:12:00
(2)字元數最少 最佳化開下去三個都一樣
作者: lucky1lk (賭到沒錢的人)   2016-08-18 15:31:00
我會選三 (我猜) 1.六個加法器 2.乘法器 (不對恕不負責)
作者: Caesar08 (Caesar)   2016-08-18 15:33:00
3的答案是錯的
作者: EdisonX (卡卡獸)   2016-08-18 15:39:00
3 有可能會ov
作者: HolyBugTw (HolyBug)   2016-08-18 16:23:00
3) x<<(3-x)
作者: stupid0319 (徵女友)   2016-08-18 16:51:00
lea eax,[eax*7]
作者: descent (「雄辯是銀,沉默是金」)   2016-08-18 17:21:00
更想知道快了幾個 us?
作者: johnpage (johnpage)   2016-08-18 17:31:00
看cpu,有的ㄧ個指令就結束
作者: bdvstg (bdvstg)   2016-08-18 18:21:00
x沒限定型別嗎?
作者: FRAXIS (喔喔)   2016-08-18 18:48:00
https://godbolt.org/g/8sK14l 可以自己試試看
作者: Schottky (順風相送)   2016-08-18 19:02:00
住手啊!浮點數不可以隨便 << 啊!
作者: chuegou (chuegou)   2016-08-18 19:13:00
想說的上面都說了 x的型別 硬體所給的指令集 這兩個是重點
作者: Frozenmouse (*冰之鼠*)   2016-08-18 19:17:00
看要怎樣的快,寫得快的話2F正解XD
作者: j7210429 (~å½±~)   2016-08-18 19:52:00
這是一線design house 目前軟韌的筆試題目,一模一樣,一字不漏記出來的,題目就是這樣,請問各位高手有有甚麼想法答案嗎?謝謝
作者: FRAXIS (喔喔)   2016-08-18 20:10:00
先只考慮 signed 整數 同時硬體在 x86 上?
作者: Caesar08 (Caesar)   2016-08-18 20:53:00
一線的design house不會operator precedence...?
作者: j7210429 (~å½±~)   2016-08-18 21:00:00
題目真的沒再寫甚麼,就是一個筆試選擇題而已
作者: wtchen (沒有存在感的人)   2016-08-18 22:05:00
如果小學開始教C的話,這種沒腦題目就會常看到
作者: TobyH4cker (Toby (我要當好人))   2016-08-19 04:25:00
最快的implement實作方法就是2啊,x*7實作很快不是嗎XD
作者: PkmX (阿貓)   2016-08-19 05:55:00
如果x是浮點數的話1和2也不一樣啊XDhttp://melpon.org/wandbox/permlink/ZWxMAc8rVADaOc33float的話 4.701983e-39 1和2也會不一樣
作者: MOONRAKER (㊣牛鶴鰻毛人)   2016-08-19 09:56:00
一線不知 一線半的design house裏也是有人不會寫程式的
作者: j7210429 (~å½±~)   2016-08-19 11:48:00
假設是int x;
作者: Ebergies (火神)   2016-08-19 14:59:00
3 的答案是錯的, 你被騙惹
作者: joefaq (小瑜)   2016-08-19 23:38:00
如果是寫分位的話其實不太會用浮點數
作者: johnjohnlin (嗯?)   2016-08-20 11:22:00
2 吧,就算硬體沒支援 compiler 也能幫你轉的
作者: yea107 (ㄚ隆)   2016-08-21 12:51:00
覺得1跟2編譯器都會自動幫忙最佳化…
作者: BoXeX (心愛騎士團異端審判騎士)   2016-08-24 02:21:00
3的優先權QQ
作者: rareone (拍玄)   2016-08-24 14:54:00
3是什麼寫法
作者: Hazukashiine (私は幸せです)   2016-08-25 02:03:00
個人覺得,這三種對編譯器是等價的 XD
作者: ArcherState (電費不繳)   2016-08-25 13:00:00
0.2秒的時間選(2),丟進編譯器最佳化後三種都一樣選最短的寫就好XD
作者: AlphaSC (AlphaSC)   2016-08-29 12:17:00
請問大大 出去工作需要會(3)這種寫法嗎QQ
作者: Schottky (順風相送)   2016-08-29 13:27:00
如果你是指 x<<3-x 的話,出去工作不需要錯誤的寫法謝謝該加的括號就要加,不要自作聰明隨便省,括號又不用錢

Links booklink

Contact Us: admin [ a t ] ucptt.com