組合語言中一般的格式為:
1、定義資料段和**段
2、確認資料段和**段,但是並未指明資料段的位址
3、程式一開始先指明資料段的位址
4、開始程式編寫
5、程式結束時要呼叫程式終止的終斷,否則程式無法正常終止
一段小例程,演示組合語言的基本格式,實現8位數字的加法
/*********資料段定義**********/
data segment
a db 129d
b db 130d
sum dw ?
data ends
/***********************************/
code segment
assume ds:data , cs:code ;確認**段和資料段
start:
mov ax,data
mov ds,ax
xor ax,ax
xor bx,bx
mov al ,200d
mov bl ,200d
add al ,bl
adc ah , ah
mov sum,ax
/*******程式終止指令*******************/
mov ax, 4c00h
int 21h
/**********************/
code ends
end start
2、下面試一試使用流程圖表達程式
將一段字串中的大寫字母轉換為小寫字母,其餘字元不變
;大寫字母轉換為小寫字母
流程圖:
data segment
;add code here
text db 'convert from upper to lower$'
data ends
code segment
assume ds:data , cs:code
start:
mov ax,data
mov ds,ax
;add code here
lea bx,text
b20: mov al,[bx]
cmp al, '$'
je exit
cmp al,'a'
jb b50
cmp al,'z'
ja b50
add al,20h
mov [bx],al
b50:inc bx
jmp b20
exit: mov ax, 4c00h
int 21h
code ends
end start
彙編 碼制轉換 大小寫字母轉換
問題描述 一位元組的ascii碼取其第四位變成bcd碼 十個資料,可用迴圈,且迴圈次數已知,用loop語句 start mov cx,000ah 迴圈 次 mov si,2000h ascii碼首位址 mov di,2500h bcd碼首位址 a1 mov al,si 第乙個數字址放到si傳送給al...
轉換大小寫字母 0330
思路分析 首先用getchar 函式獲得字元,然後判斷字元為大寫還是小寫,如果是大寫字母就轉換為小寫,如果是小寫字母就轉換為大寫 如果輸入的是數字就不輸出 定義乙個終止符,輸入終止符就退出迴圈 最後附上 define crt secure no warnings include includeint...
大小寫字母判斷和轉換
一 大小寫字母判斷 1.isalpha 標頭檔案 c include c語言 include 功能 判斷字元ch是否為英文本母。當ch為英文本母a z或a z時,返回非零值,但不一定是1 否則返回零。格式 isalpha ch 2.isupper 標頭檔案 c include c語言 include...