Thanh ghi W Trong bài này, chúng ta nói đôi nét về thanh ghi W để các bạn nắm rõ hơn phương thức hoạt động của PIC. | Hướng dẫn về thanh ghi W Thanh ghi W Trong bài này chúng ta nói đôi nét về thanh ghi W để các bạn nắm rõ hơn phương thức hoạt động của PIC. Khái niệm thanh ghi W Thanh ghi W là thanh ghi làm việc Working register và hầu hết mọi lệnh của PIC đều liên quan đến thanh ghi W này lấy thí dụ như ADDLW cộng một số vào giá trị đã có trong thanh ghi W SUBWF trừ giá trị của thanh ghi W cho một thanh ghi khác XORLW lấy XOR của một số và thanh ghi W . Và các bạn để ý rằng tổng số lệnh có thể tương tác với thanh ghi W là 23 35 lệnh gần như chiếm toàn bộ tập lệnh của PIC. Vậy chúng ta ghi nhận điều thứ nhất khi PIC làm việc gần như luôn luôn tương tác với thanh ghi W. Điều thứ hai các bạn nhìn trong bản đồ bộ nhớ dữ liệu của PIC các bạn sẽ thấy là thanh ghi W là thanh ghi không có mặt ở bất kỳ băng nào của bộ nhớ dữ liệu trong khi đó thanh ghi STATUS có mặt ở cả 4 băng. Các bạn lại thấy một điều rằng thanh ghi W và thanh ghi STATUS có thể được truy nhật từ tất cả các băng và từ bất kỳ đâu trong chương trình và vì vậy chúng trở thành những thanh ghi toàn cục nhất. Điểm khác biệt giữa chúng ra sao Đâu là sự khác biệt giữa thanh ghi W và các thanh ghi khác Điểm thứ ba trong tập lệnh của PIC không có lệnh nào cho phép tương tác trực tiếp giữa một thanh ghi trong bộ nhớ dữ liệu dùng chung với một giá trị thêm vào mà đều phải thông qua thanh ghi W. Như vậy thanh ghi W là cầu nối của hầu hết các phép toán được thực hiện trên các thanh ghi nằm trong bộ nhớ dữ liệu. Như vậy thanh ghi W vô cùng quan trọng trong hoạt động của PIC. Nhắc lại kiến trúc Harvard và Von Newmann Hình sau sẽ gợi lại cho các bạn nhớ về kiến trúc Harvard và Von Newmann trong đó các bạn luôn nhớ rằng có sự phân biệt giữa bộ nhớ dữ liệu và bộ nhớ chương trình. Các bạn thấy rằng bus bộ nhớ chương trình của PIC midrange chỉ có 14 bit. Với đặc điểm này chúng ta sẽ phân tích vì sao cần phải có thanh ghi W và sau đó chúng ta sẽ phân tích tất cả các hoạt động của thanh ghi W trong một chương trình viết bằng PIC nếu có thể. .