betabeta
29-05-2010, 12:52 PM
Tớ dùng CCS,PIC8F4431 khai báo biến int16 như sau:
int16 tong;
#byte tong = 0x058
#byte tongH = 0x058
#byte tongL = 0x059
vì nghĩ rằng HByte(byte cao) của biến int16 sẽ nằm ở ô 0x58, còn LByte(byte thấp) ở ô 0x59
Nhưng kết quả là chỉ có HByte nằm đúng vị trí đó, còn ô 0x59 chỉ chứa giá trị 80,cũng đã thử ô 0x57 nhưng nó chứa giá trị 77.
Vậy tớ muốn hỏi CCS đã đặt Lbyte ở chỗ nào vậy để dễ xử lý số liệu?
(không dùng chiêu dịch bit để tính giá trị Lbyte, vì tớ muốn biết rõ CCS hoạt động thế nào)
Thanks
int16 tong;
#byte tong = 0x058
#byte tongH = 0x058
#byte tongL = 0x059
vì nghĩ rằng HByte(byte cao) của biến int16 sẽ nằm ở ô 0x58, còn LByte(byte thấp) ở ô 0x59
Nhưng kết quả là chỉ có HByte nằm đúng vị trí đó, còn ô 0x59 chỉ chứa giá trị 80,cũng đã thử ô 0x57 nhưng nó chứa giá trị 77.
Vậy tớ muốn hỏi CCS đã đặt Lbyte ở chỗ nào vậy để dễ xử lý số liệu?
(không dùng chiêu dịch bit để tính giá trị Lbyte, vì tớ muốn biết rõ CCS hoạt động thế nào)
Thanks