2010年12月26日 星期日

漁人碼頭

這星期沒有騎腳踏車回家(偷坐捷運)


所以就跑去漁人碼頭晃晃


後來發現,原來我的小DC還是可以拍出不錯的照片嘛


嘿嘿嘿





 


最近工作有點忙碌,搞得自己有很多事想做,但很多事都沒有做


不知道這樣是好事還是壞事


不過應該再給自己定點計劃了


最近一直想玩uC/OSⅡ,於是自己也花錢買了一片「紅牛」回來研究


終於要玩點不一樣的東西了


好吧~


衝了~~


GOGOGO~


2010年12月17日 星期五

工作三個月

今天在公司滿三個月(其實是到星期日,但六、日休息)


在公司也當了三個月的米蟲了,終於要開始接case了


如果要問我過得好不好的話,我一定會說:「很好,非常好!」


哈哈~


在這裡真的可以學到非常多的東西,真的很多,都快有點消化不良了


我是看大家當兵都在慶祝百日,我也是在當兵


跟著流行一下吧


最近公司在舉辦聖誕節的活動(運氣好,我在這陣子剛好接了一個case,我的活動要泡湯了@@)


拍拍公司的樣貌做紀念吧



背後的五字箴言



來我們公司最喜歡拍的蒙那利莎的微笑


呵~他是由主機板拼起來的喔,遠看看不懂,近看就會懂了



我們公司的吉祥物



哈,變裝後還是很有殺氣呢!!!



它是由主機板的pcb板組成的,有趣吧



聖誕節的活動,哈,我太菜了,所以,不參加



很漂亮的聖誕樹



很多人會問我們公司操不操


或許這張照片你就知道了,拍攝時間是星期五晚上八點,燈火通明




那如果問我後不後悔的話,我不後悔~ 因為也沒啥好後悔的,至少我不吃虧,主管人算不錯了

如果問我三年後會不會繼續留下來的話,我只能說看造化,現在說還言之過早


但如果一定要知道答案的話,那只好和下圖一樣的「動作」了


 


哈~ 笑杯


2010年12月12日 星期日

2010龍華41歲校慶

這次終於以畢業生的角度參加龍華校慶了


每年都是很多人參加,今年當然也不例外


不過我們把方向搞錯了,結果坐到後面的位置,所以看得不是很過癮


下次有機會的話,一定要坐正面(評審的後面)



開場的是日本風,一開始以為,就跳跳扇子舞,結果沒想到~~~



所有的女生都脫衣服~~


哈~


其實是換衣服啦



遊戲系做了一個wii的主機,配合瑪莉歐的劇情



想當然爾,就是一群的瑪莉歐和公主


 


接著是我比較看不懂的劇情


首先是kitty風



小叮噹風



正妹風



最後是三位一體,就三種混合一起跳嚕,好怪的情節



題外話,不過他們小叮噹的衣服很有特色喔




途中,竟然電機系只派出了一名代表,超勇敢的啦,叫一個人騎腳踏車饒場,不過後來有20人左右一起跳吧,很特別。


機械系的道具很有趣


一開始放了一團肉球在前面,還搞不懂是啥東西


結果竟然自己充氣變娃娃了



這娃娃超屌的,跳起舞來不得了啊~~


太屌了


嘿嘿,拍了一小段影片,贊的啦~



接著是環遊世界的主題


這幾位女生,喔不~ 他們是男的,別被騙了



這好像是芝加哥風~



加入了矣及豔后和和服風



中間應該是韓國風吧



途中還加入了薑餅人



他們的女生也搞變裝,動作超快的啦



接著是世足風,他們的感覺做得很棒,還做了一顆超大的足球在踢。




很有歡樂的感覺


 


過程中他們也換了一次裝,今年有很多巧合的地方,這是其中之一



他們的這個隊形跳起來非常好看,可惜沒有影片



最後做了一個蛋糕為ending,又一個巧合了



壓軸的電子系,也是日本和服風


我想這是電子系大部份的女生了



加入了很多中國風的感覺-鼓和旗



     

這次的感覺非常贊


在室內打鼓真的就是氣勢非凡,加上了大旗的揮舞,整個就是非常好看


這是在正面拍的


真的,更有感覺



最後~


我愛龍華~龍華是我家


獻給我的母校~


2010年12月8日 星期三

奇同位檢查-續

這幾天起床後,就一直在想此奇同位到底如何產生運算的


今天終於想通了,原來就和CRC的想法是一樣


假設今天要被判斷的資料為10100101b


1、把高低4bit 拿來xor



2、再把最低4位元 的高低2bit拿來xor


3、最後再把最低2位元 的高低1bit拿來xor


我們可以發現,這樣的答案是0,也就是有偶數個1


但是如果是奇同位的判斷話,那麼就還要再xor 一次0x01


這樣就可以得到奇同位元的答案了


沒錯,如果是偶同位的話,就不需要做這件事了


 


原理了解後,當然要改寫一下程式了


原本的程式寫得其實還滿亂的


WORD parity_check(BYTE  data){
   WORD parity = data;
   parity ^= (parity >> 1);
   parity ^= (parity >> 2);
   parity ^= (parity >> 4);


   return ((~(parity & 0x01))& 0x01);
}


 


經過改良後


WORD parity_check(WORD  data){
   WORD parity = data;


   parity ^= (parity >> 4);
   parity ^= (parity >> 2);
   parity ^= (parity >> 1);
   parity ^= 0x01;
   return (parity & 0x01);
}


整齊漂亮多了(最後的return 變乾淨了),而且也變得更清楚好懂了


不過即使是這樣的運算,還是沒有下面的程式來得有效率


WORD parity_check4(WORD data)
{
   static const WORD PAR_word=0x9669;
   WORD nibble = data>>4;
   WORD parity = 0;
   parity = (data & 0x0f) ^ nibble;


   return ( (PAR_word>>parity) & 0x01 );
}


經過這樣的程式練習,頭腦又活動了一下