第六章 包含多個段的程式 知識梳理

2022-09-10 15:57:20 字數 1959 閱讀 3409

1.在**段中使用資料

dw的含義是定義字型資料(define word)

注意

db定義位元組型別變數,乙個位元組資料佔1個位元組單元,讀完乙個,偏移量加1

dw定義字型別變數,乙個字資料佔2個位元組單元,讀完乙個,偏移量加2

dd定義雙字型別變數,乙個雙字資料佔4個位元組單元,讀完乙個,偏移量加4

程式框架

assume cs:code

code segment

...................

.....資料

..................

start

..............

.....**

..............

code ends

end start

偽指令end描述了程式結束和程式的入口

end start 指明程式的入口位址

在**段中使用棧

注意設定棧頂元素

assume cs:code

code segment

***預留空間用作棧

start .....

人工設定棧頂

........................

mov ax,4c00h

int 21h

code ends

end start

將資料,**,棧放入不同的段

原因:乙個段的容量不能大於64kb

每個段的偏移位址都是從0開始的

assume cs:code,ds:data,ss:stack

data segment

......

data ends

stack segment

,,,,,,

stack ends

code segment

start:

..........設定ds

........設定ss和sp

........

mov ax,4c00h

int 21h

code ends

end start

第六章 包含多個段的程式

一 在 段中使用資料。dw,作用為定義字型資料。dw define word。dw定義時資料之間以逗號分隔。eg dw 0123h,0456h,0789h 程式6.1 反彙編 g命令執行 執行出現錯誤。從0770 0010開始才是需要的機器碼,資料被執行成了機器碼。兩個方法解決 法一 將ip值設為1...

組合語言第六章 包含多個段的程式

今天我們來看看第六章。我們知道在高階語言中,有陣列這樣東西。那麼在組合語言中,我們又如何將一段資料儲存在一段連續的記憶體中呢?我們肯定不能隨便找到一段記憶體,然後就往裡面存,因為那樣可能會覆蓋那裡原有的非常重要的東西。所以我們應當讓系統為我們分配。這裡就又涉及到乙個語句 dw 0123,2312,3...

第六章 類與物件 類的包含

1.組合描述的是類與類之間的整體與部分的關係,即如果在邏輯上a是b的一部分,則允許a和其他資料成員組合成b。例如 發動機 車輪 電池 車門 方向盤 底盤都是小汽車的一部分,它們組合成汽車,而不能說發動機是汽車的一種。2.類的組合,指的是類中內嵌其它類的物件作為成員資料 實現組合用類成員表示,即乙個類...