Announcement

Collapse
No announcement yet.

Hỏi về dịch bit

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hỏi về dịch bit

    Mấy bạn cho mình hỏi nếu val = 0xFACE thì val>>8 có kq là 0x00FA hay là 0xCEFA

  • #2
    Nó không có shift vòng bạn à.

    Ví dụ: val là kiểu int thì khi ra kết quả nó sẽ là 0x00FA
    https://ledsieure.com - Tết rồi, mua đèn về trang trí đi

    Comment


    • #3
      Originally posted by CH1101146 View Post
      Nó không có shift vòng bạn à.

      Ví dụ: val là kiểu int thì khi ra kết quả nó sẽ là 0x00FA
      Chưa rõ lắm bạn! Shift vòng là như thế nào? Tại sao mình biết là ko có shift vòng và tại sao int val = 32 thì kq là 0x00FA

      Comment


      • #4
        Ừm, thấy đáp án thứ hai của bạn:
        0xFACE --> 0xCEFA là vòng lại chứ gì nữa

        Bản chất của shift bit là shift xong rồi, bit còn thiếu sẽ được fill bằng bít 0

        0xFACE là 16 bit. Bạn shift phải 8 bít thì CE bị mất, FA shift qua phải, phần của FA được fill bằng bít 0 nên kết quả là: 0x00FA

        Còn như bạn thanh_hoai0 nói thì không cần, in ra số hex thì chỉ cần %x là được
        https://ledsieure.com - Tết rồi, mua đèn về trang trí đi

        Comment


        • #5
          Kết quả ra là đáp án thứ nhất đó bạn! Và khi nào thì dùng shift vòng, lúc nào không dùng shift vòng!Hồi trước viết code cho VĐK cũng có dịch bit ntn, cứ tưởng là dịch 1 bit thì sẽ thêm 1 số 0 vào, đơn giản vậy thôi!

          Comment

          LHQC

          Collapse
          Working...
          X