RP Store Tìm linh kiện theo mã, gửi BOM nhận báo giá Gửi BOM

thắc mắc về lệnh Incfsz f,d

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • gastech
    Nhập môn đệ tử
    • May 2008
    • 2

    #1

    thắc mắc về lệnh Incfsz f,d

    Theo datasheet của pic thi 0 <= f <= 127, cho em hỏi ý nghĩa của điều kiện này là gì ?
    Em dùng MPLAP SIM mô phỏng thì khi cho f > 127 , chương trình vẫn chạy bình thường.
  • namqn
    Trưởng lão PIC bang
    • Feb 2006
    • 3020

    #2
    Nguyên văn bởi gastech View Post
    Theo datasheet của pic thi 0 <= f <= 127, cho em hỏi ý nghĩa của điều kiện này là gì ?
    Em dùng MPLAP SIM mô phỏng thì khi cho f > 127 , chương trình vẫn chạy bình thường.
    Theo datasheet của PIC (PIC16F877A chẳng hạn), lệnh INCFSZ f,d là lệnh tăng thanh ghi f và bỏ qua lệnh tiếp theo nếu kết quả của phép tăng thanh ghi f là zero. Bit d chỉ thị đích ghi kết quả, d = 0 thì ghi kết quả vào W, d = 1 thì ghi kết quả ngược vào thanh ghi f. Điều kiện 0 <= f <= 127 cho thấy chỉ có 7 bit địa chỉ được dùng để định vị thanh ghi f.

    Nếu bạn dùng giá trị f >= 128, trình biên dịch lẽ ra phải thông báo rằng bạn dùng giá trị vượt quá khả năng chứa trong 7-bit địa chỉ, do đó chỉ có 7 bit thấp nhất của địa chỉ sẽ được dùng để định vị f.

    Bạn có thể làm thí nghiệm sau: dùng giá trị 129 cho f, và mô phỏng bằng MPLAB SIM xem thanh ghi có địa chỉ 129 (0x81) sẽ bị thay đổi hay thanh ghi có địa chỉ 1 sẽ bị thay đổi.

    Thân,
    Biển học mênh mông, sức người có hạn.

    Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
    http://www.picvietnam.com/forum/showthread.php?t=1263

    Comment

    Working...