[bx]可以表示乙個記憶體單元,段位址在ds暫存器中,偏移位址為bx。[bx+idata]也表示乙個記憶體單元,其段位址在ds中,偏移位址為bx+idata(這裡的bx表示暫存器bx中的值),這是不是c語言中陣列定址有點類似。下面通過一段**來學習一下。
上面**用來將datasg中定義的第乙個字串轉化為大寫,第二個字串轉化為小寫。第一字元的長度為5,程式在表示第二個字串時直接用[bx+5],[bx]表示第乙個字串的第乙個值,這個c語言的二維陣列很類似。
and al,11011111b是將al指向的字母變為大寫,and是按位與;or al,00100000b是將al指向的字母變為小寫,or是按位或。下面來debug看一下。
程式載入時,可以看到字串的值。
程式執行完後,可以看到字串變了。
彙編 定址方式
定址方式 1立即定址方式 運算元包含在指令中,作為指令的一部分,跟在操作碼後存放在 段。這種運算元稱為立即數,可以是16位,也可以是8位。前者按照高高低低原則存放。例子 mov ax,1234h 2暫存器定址方式 運算元在cpu內部的暫存器中,指令中指定暫存器號。對於16位運算元,暫存器可以是ax,...
彙編 定址方式
定址方式 1立即定址方式 運算元包含在指令中,作為指令的一部分,跟在操作碼後存放在 段。這種運算元稱為立即數,可以是16位,也可以是8位。前者按照高高低低原則存放。例子 mov ax,1234h 2暫存器定址方式 運算元在cpu內部的暫存器中,指令中指定暫存器號。對於16位運算元,暫存器可以是ax,...
彙編中的資料定址方式
通俗的說,資料定址方式就是尋找資料的方式。在彙編中這是很重要的。英文 data addresing mode 資料定址方式有三種 一 立即數定址 舉個例子 mov eax 22h 這個22h就是立即數,也就是說立即數只能在源運算元中,而且是常量。能夠立即定址,由此得名。二 暫存器定址 把運算元放在暫...