Chào anh, bài viết này hình như anh có lầm lẫn trong thứ tự, phía trên 8, 11, 12 đại diện cho LATCH, CLOCK, INPUT, phía dưới có vẻ như thành LATCH, INPUT, CLOCK?

Cảm ơn bạn đã góp ý, mình sẽ xem xét và điều chỉnh nếu có vấn đề.

Sao anh không khai báo i là unsigned long và cho chạy đến 65536 ạ?

Chỗ đó ý tác giả là dịch bit 16 lần, nếu viết lại thì đơn thuần là cho vòng lặp 16 lần, mỗi lần dịch qua trái 1 bit. Code này tuy tiết kiệm biến nhưng khá là không tường minh.

Phân tích hệ thống máy tính cũng tựa như nuôi dạy trẻ, bạn có thể gây hư hỏng trầm trọng, nhưng không thể chắc chắn về thành công. Tom DeMarco