View Single Post
Old 30-05-2010, 09:40 AM   #2
Mr.Bi
Đệ tử 7 túi
 
Tham gia ngày: Jul 2007
Nơi Cư Ngụ: Đà Nẵng
Bài gửi: 188
:
Trích:
Nguyên văn bởi betabeta View Post
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
chi mà hiểu lằn nhằn thế . Trong CCS , hiểu ngọn ngành như MPLAB rất mệt , cứ viết
Code:
unsigned int16 tong; // 16bit k dấu
thì ta đã đc biến tong 16bit , còn vị trí nó nằm ở đâu ....kệ nó chứ , trình dịch tự nó sắp xếp
Mr.Bi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn