51匯程式設計序編寫的一些原則

2021-06-09 22:14:02 字數 633 閱讀 7473

系統暫存器:

a:累加器

b:乘除運算/暫存

c:進製標誌/位累加器

dptr:16位資料指標,訪問rom/xram

pc:程式計數器

psw:程式狀態字

r0:8位資料指標,訪問iram

r1:iram堆指標,可用來分配iram區域性陣列

r2,r3:xram堆指標,可用來分配xram區域性陣列

sp:棧指標

a、b、c、dptr、r0、psw等是自動的,除了isr外,不必入棧保護

暫存器變數和暫存器引數:

在子程式呼叫過程中可以使用r4~r7這4個暫存器作為變數或引數

暫存器變數按照r4-->r7的順序分配

暫存器引數按照r7-->r4的順序分配

如果變數或引數超過4個時,則超出的從10h~1fh分配

子程式返回值:

返回bit型,儲存在c中

返回byte型,儲存在r7中

返回word型,儲存在(r6,r7)中

iram記憶體分配:

00~07:工作暫存器

08~0f:快中斷專用

10~1f:儲存器變數和函式引數

20~2f:bit、bdata

30~ff:全域性變數、棧、堆

匯程式設計序的Hello world

一 匯程式設計序的hello world x86 at t data msg ascii hello world,hello at t asm n len msg text global start start movl len,edx 顯示的字元數 movl msg,ecx 緩衝區指標 movl ...

彙編的一些程式

led閃爍的簡單試驗 org 0000h 程式從此位址開始執行 ljmp main 跳轉到 main 程式處 org 030h main 從030h處開始 main mov p2 00h p2為低電平 led 燈亮 acall delay 呼叫延時子程式 mov p2 0ffh acall dela...

自寫的匯程式設計序

哈哈,今個兒真高興呀!現在特地將自己編的程式掛到部落格上,還請各位高手多多指點!同時也給自己及所有正在研究學習彙編的朋友鼓鼓勁!以下是我自己寫的程式 assume cs codesg data segment db 1975 1976 1977 1978 1979 1980 1981 1982 19...