[程式語言] 不用 if 的寫法


softwind1314 wrote:
不對歐 這位大大 你...(恕刪)


大大真是程式的高手, 太強了!

http://stanwu.us

irs wrote:
還原成原始形式就沒有...(恕刪)


出現 assembly 高手, 現在應該沒有很多人會這個了 XD

http://stanwu.us

yinhell wrote:
自我訂正i=i|0;...(恕刪)


這個用法太絕妙了, 真是優秀的人才 ^O^

http://stanwu.us

kaworucloud wrote:
只要 i 不是 1 ...(恕刪)


大大太強了, 程式用法太精妙了 XD

http://stanwu.us
http://stanwu.us

stan wu wrote:
出現 assembly 高手, 現在應該沒有很多人會這個了 XD


那個應該是還好, 現在學校應該都還會教... 跳高階的比較好玩.

echo "1" | sed 's/^1$/yes/g' | sed 's/^[^yes]*$/no/g'

在原來限制範圍的輸入, 應該都可以給出正確的反應.
hxxX54yPZ5HH5VHP\hmpX5gTPh99X5J4Ph00X5YBPjjhexX5exHPDX52JP555554P5ZZ5rr

irs wrote:
那個應該是還好, 現...(恕刪)


irs 大大, 看到這一行實在是太感佩了, 可以想到這樣的用法 XD

http://stanwu.us

fedora wrote:
ps.
忽然想到,這有點偷雞,雖然沒用到 if,但 grep 這支搜尋字串的程式,本身應該有用到類似 if 的邏輯運算。(恕刪)


沒錯 ! fedora 大大說得沒錯.
樓上幾位寫的程式碼, 都無法閃避 "判斷" & "跳脫" 的 if 精神.

hotass196 wrote:
沒錯 ! fedora 大大說得沒錯.
樓上幾位寫的程式碼, 都無法閃避 "判斷" & "跳脫" 的 if 精神.


這種東西應該是只有兩種解法,一是查table,二是用電路上的挑選器。
下面是用挑選器的例子。

// returns 0xFFFFFFFF if odd. otherwise 0x00000000.
int LSD_extend(int i){
int a = i&1;
return (~a)+1;
};

// the wave symbol represents invertor.
// result equals to var1 if condition is odd.
result = ( var1 & LSD_extend(condition) ) | ( var2 & LSD_extend(~condition));



irs wrote:
那個應該是還好, 現在學校應該都還會教...

有一些大學已經沒有在開組合語言的課了,至少我讀的那間沒有,因為想學的人太少
要學的話大概就是在計算機架構的課中學到一些。
還沒有人用 XOR

MOV A, (i)
XOR A, 1

ZF = 0 就不是 1
ZF = 1 就是 1

ZF ..... 零旗標


人間冷暖情為貴 , 世態滄桑越堅強
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!