NE6101050林峻毅

@Destiny0504

Joined on Aug 4, 2021

  • contributed by < Destiny0504 > 測驗一 因為 ~0UL 在 2's complement 的編碼會呈現全部為一的結果,所以我們利用這種特性並利用 shift right 和 shift left 兩種方式來製作 mask 保留我們想要的 bits shift right 是用於製作 MASK(h, 0) shift left 是用於製作 MASK(0, l) 將兩者合併之後就可以得出我們要的 MASK 了 #include <stdio.h>
     Like  Bookmark
  • contributed by < Destiny0504 > 實驗環境 $ gcc --version gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 $ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian
     Like  Bookmark
  • contributed by < Destiny0504 > 測驗 1 在第三次測驗中,我們做過一樣的操作,只是這次是將r |= shift、ret |= (v > 0x1U) 合併成r | shift | x > 0x1,最後的 +1 則是為了完成 ceiling 的操作 int ceil_log2(uint32_t x) { uint32_t r, shift; x--;
     Like  Bookmark
  • contributed by < Destiny0504 > 題目連結 測驗一 uint32_t average(uint32_t a, uint32_t b) { // 判斷 a 和 b 都是奇數的情況下,才加一 return (a >> 1) + (b >> 1) + (a & b & 1); }
     Like  Bookmark
  • contributed by < Destiny0504 > 題目連結 測驗 1 AAA = n->next = first; BBB = n->pprev = &h->first; // Leetcode problem 1 Two sum
     Like  Bookmark
  • contributed by < Destiny0504 > 實驗環境 $ gcc --version gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0 $ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian
     Like  Bookmark