顯示具有 Assembly 標籤的文章。 顯示所有文章
顯示具有 Assembly 標籤的文章。 顯示所有文章

2010年11月9日 星期二

ARM assembly

ARM assembly

1. BIC(位清除)
指令对 Rn 中的值 和 Operand2 值的反码按位进行逻辑“与”运算
ex:
BIC R0, R0, #0xF0000000 //将R0高4位清0
BIC R1, R1, #0x0F //将R1低4位清0


2. RSB 反向减法
RSB(反向减法)指令可从 Operand2 中的值减去 Rn 中的值
ex:
RSB r4,r4, #1280 //R4=1280-R4
RSB R4, R0, #0×46 //R4=0x46-R0

2009年10月2日 星期五

assembly 入門中 --- (2)

assembly 入門中 --- (2)

【xlabt 查表】
XLAT與XLATB是同一個指令,
原文意思是Translate by table look up,
也就是藉由查表轉換的意思。
它的來源運算元固定為DS:BX+AL,
而目的運算元固定為AL,故指令敘述時不需要寫出運算元。

例:

.model small
.code
begin:
mov ax,@data;
mov ds,ax;
mov bx,offset table
mov al,6;
xlatb;
mov dl,al;
mov ah,02h;
int 21h;
mov ah,4ch;
int 21h;
.data
table db '123456789'
.stack
end begin

結果:
印出 7

ref :
資料轉移指令

2009年10月1日 星期四

Debian下用dosemu模擬dos環境

Debian下用dosemu模擬dos環境

Debian lenny

1. # aptitude install dosemu (不能安裝的話,在sources.list加入:deb http://ftp.de.debian.org/debian sid main contrib)

2. # dosemu (需root才行)

3. 將masm需要的執行檔 masm.exe,link.exe,debug.exe,ml.exe,ml.err放入/root/.dosemu/drivers/d/bin/

以上的檔案可以在這裡Download
(debug,XP下就有;在system32目錄下)
(看masm的版本吧,目前我用masm5.x的,就不需ml.*)

大致如此…吧 = =|||
(比較有問題的會是masm的來源,之前去官網DL最新版10.x for Win,但…不會用 =.=)

ref:
1. linux中使用masm
2. 許多不錯的masm相關網站(寶物很多)

Assembly Bookmark

Assembly Bookmark

1. 組合語言之藝術

2. 小木偶的網頁
/*nice*/