Tôi đã học Assembly 32bit như thế nào (Phần 2)Sau khi ôn lại các kiến thức nền tảng về biểu diễn dữ liệu, phần tiếp theo chúng ta cần nắm vững để có thể code Assembly 32bit là kiến thức về các thanh ghi. Show 3. Các thanh ghi 32 bitTrong Assembly, các lệnh sẽ rất gần với mã máy. Đối với máy tính thì không có khái niệm biến như chúng ta thường sử dụng trong các ngôn ngữ bậc cao. Thay vào đó, chúng ta sẽ thao tác qua các thanh ghi và bộ nhớ.
Trong các cờ trên thì DF, IF và TF là 3 cờ điều khiển. OF, SF, ZF, CF, AF và PF là 6 cờ trạng thái. 3.3 Thanh ghi đoạnMột chương trình Assembly được chia thành các đoạn (Segment) chứa dữ liệu, code và stack:
Ngoài CS, DS và SS ra còn có các thanh ghi đoạn ES (Extra Segment Register), FS và GS cung cấp các phân đoạn bổ sung cho việc lưu trữ dữ liệu. Các chương trình Assembly đều cần truy cập tới bộ nhớ. Tất cả vị trí trong bộ nhớ thuộc các phân đoạn đều phụ thuộc vào địa chỉ bắt đầu của phân đoạn đó. Do các thanh ghi đoạn lưu địa chỉ bắt đầu của phân đoạn, để xác định chính xác địa chỉ của 1 dữ liệu hoặc 1 lệnh thuộc phân đoạn, cần có thêm giá trị offset. Địa chỉ thực tế sẽ được tính bằng cách cộng thêm giá trị offset vào địa chỉ đầu phân đoạn. |