Thông báo

Collapse
No announcement yet.

Cách thực hiện lệnh của 8051

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Cách thực hiện lệnh của 8051

    Bác nào giải thích cho em phương thức thực hiện 1 lệnh, chẳng hạn như lệnh MOV A,@R0. CPU làm những gì? (chi tiết về thao tác bus và vào ra số liệu). Đối với các lệnh di chuyển số liệu thì ALU có làm việc không?

    Tiện đây em hỏi thêm, thầy em bảo là khi thực hiện lệnh ADD thì nó chỉ SET cờ C (nếu tràn) chứ không xóa (khi không tràn). Có tin được không nhỉ?
    PNLab
    Mạch nạp/debug ULink2, Jlink ARM USB
    Mạch nạp AVR, PIC, 8051, MSP430 USB
    Mạch phát triển STM32, ARM9, ARM11
    more...www.pnlabvn.com

  • #2
    Nguyên văn bởi sphinx
    Tiện đây em hỏi thêm, thầy em bảo là khi thực hiện lệnh ADD thì nó chỉ SET cờ C (nếu tràn) chứ không xóa (khi không tràn). Có tin được không nhỉ?
    Có lẽ là thầy bạn bị sai rồi

    Comment


    • #3
      bạn có thể download intructionset and cấu trúc của 8051, sau khi đọc bạn sẽ hiểu được intruction của 8051/5031/89xxx
      http://www.dientuftp.com/dddt/KhanhC...ructionset.pdf

      Comment


      • #4
        hà hà mãi mới có người để ý đến câu hỏi của mình!
        Nhân đây xin hỏi thêm phát nữa, làm thế nào mà 8051 có thể thực hiện lệnh MOV A,@R0 chỉ trong 1 chu kì máy? Lệnh này có sử dụng ALU hay không?
        (câu hỏi này đòi hỏi cần trả lời cụ thể chặt chẽ về cách thức thực hiện lệnh của CPU như quá trình đọc lệnh vào IR, giải mã lệnh, truy cập RAM, điều khiển bus A,D,C...)
        PNLab
        Mạch nạp/debug ULink2, Jlink ARM USB
        Mạch nạp AVR, PIC, 8051, MSP430 USB
        Mạch phát triển STM32, ARM9, ARM11
        more...www.pnlabvn.com

        Comment


        • #5
          mov a,@r0 chỉ thực hiện trong internal ram. 1 cycle ok?!...làm gì có bus C,D.
          nếu muốn truy cập xram thì có thể:
          mov p2,# high_address
          movx a,@r0 ; đọc
          movx @r0,a ;ghi
          hoặc:
          movx a,@r1 ; đọc
          movx @r1,a ;ghi
          với address low trong R0 hoặc r1, P2 đặt address high
          nếu là câu đố cho vui thì bạn đừng làm mất thời gian của mọi người. Nếu chưa biết thì có thể đọc tài liệu tôi chỉ trên

          Comment


          • #6
            A: Adress Bus
            D: Data Bus
            C: Control Bus
            Viết tắt ấy mà, sao bác không hiểu nhỉ?
            Đây là 1 phần trong câu hỏi thi môn Vi Xử Lý của tôi! Bác trả lời thế chỉ có 0 điểm thôi!
            PNLab
            Mạch nạp/debug ULink2, Jlink ARM USB
            Mạch nạp AVR, PIC, 8051, MSP430 USB
            Mạch phát triển STM32, ARM9, ARM11
            more...www.pnlabvn.com

            Comment


            • #7
              Chúng ta cần lưu ý việc ghi tắt phải có quy ước chung để mọi người cùng hiểu, riêng về chuyện kí hiệu Bus A,D,C như thế hơi cục bộ nên không phổ biến, vì vậy rất dễ gây sự hiểu nhằm! Lần sau bạn cần ghi rõ hơn các từ viết tắt trong khi thảo luận như là một sự giao ước để mọi người hiểu và còn "trả lời" cho bạn nữa!

              Giả sử cái kí hiệu "IR" của bạn ở trên thoạt nhìn tôi cứ tưởng là "sóng hồng ngoại" tích hợp trong 8051 chứ ! Ai ngờ IR lại là thanh ghi lệnh!

              Tôi cảm giác bạn muốn "thể hiện sự uyên thâm của mình" hơn là muốn được học hỏi và lắng nghe sự chỉ giáo ở anh em thì phải !
              * Nếu đúng như vậy thì bạn nên viết luôn một chương về nghi thức thực hiện lệnh của 8051 ở luồng này đi, anh em sẽ ủng hộ lắm lắm!
              * Nếu không phải thì tôi xin chỉ cho bạn một trong những tài liệu bổ ích cho bạn tham khảo và nắm bắt sâu về quy trình thực thi lệnh của 8051 đó là: Tập sách 8051 của thầy TÓNG VĂN ON, chương cuối cùng phần phụ lục giảng giải chi tiết bằng tiếng việt về bộ lệnh của 8051.

              Comment


              • #8
                Ha ha hay thật! Những cái này em không nghĩ ra mà là quy ước của thầy giáo em khi viết, vẽ và giải thích cho sinh viên. Em đang hỏi? 1 câu hỏi cơ bản, không có gì đánh đố ở đây cả vì em chưa có câu trả lời chi tiết, chính xác cho nó nên em mới hỏi! Ai biết thì giúp đỡ!
                Có thể các bác lâu rồi không đọc phần này nên quên đấy! Em sẽ rút kinh nghiệm!

                Quy trình thực hiện lệnh của 8086 có thể tìm thấy trong rất nhiều sách về Vi Xử Lý (chẳng hạn trang 46-Nguyên Lý Phần Cứng Và Kỹ Thuật Ghép Nối Máy Tính-Trần Quang Vinh) nhưng em không tìm thấy tài liệu nào tương tự giải thích cho họ 8051 cả!
                (Nó có liên quan đến quy trình truy cập RAM nội và RAM ngoại thì phải?)
                Last edited by sphinx; 23-01-2006, 20:04.
                PNLab
                Mạch nạp/debug ULink2, Jlink ARM USB
                Mạch nạp AVR, PIC, 8051, MSP430 USB
                Mạch phát triển STM32, ARM9, ARM11
                more...www.pnlabvn.com

                Comment

                Về tác giả

                Collapse

                sphinx Tìm hiểu thêm về sphinx

                Bài viết mới nhất

                Collapse

                Đang tải...
                X