Trích:
Nguyên văn bởi falleaf
Vậy tùy theo vị trí bạn đặt nó ở đâu, nó sẽ là biến, hoặc là hằng. Nếu là biến, nó chỉ mang giá trị của dịa chỉ của thanh ghi nằm trong bộ nhớ dữ liệu, nếu là hằng, nó nằm đâu cũng được kể cả ở bộ nhớ dữ liệu và bộ nhớ chương trình.
|
Em vẫn còn đôi điều khúc mắc, mong bác nhiệt tình chỉ bảo :
Khi viết :
LABLE1 EQU 0x20
....
MOVLW 0xFF
MOVWF LABLE1
-> lúc này em muốn LABLE1 là một biến, đặt nó ở vị trí 0x20 trong RAM -> OK.
Còn :
LABLE2 EQU 0x20
...
MOVLW LABLE2
-> em muốn LABLE2 là một hằng mang giá trị 0x20 và OK.
Nhưng nếu gộp lại :
LABLE3 EQU 0x20
...
MOVLW 0xFF
MOVWF LABLE3
MOVLW LABLE3 ;!!!!????
thì W = ?, có gì sai không ?
Như vậy, chốt lại : cụ thể với câu lệnh "LABLE3 EQU 0x20" thì trình dịch nó có hiểu LABLE3 là hằng hay là một thanh ghi (biến) ? Hay là nó phải phụ thuộc vào những thao tác phía sau này, xem người dùng định nghĩa nó như hằng hay thanh ghi ?
Ý của em là vậy, vì mới học nên thắc mắc lung tung, thấy bác nhiệt tình nên em mới dám hỏi. Mong bác chỉ bảo
