彙編作業程式設計題C 1

2021-10-05 12:32:21 字數 1564 閱讀 1065

已知在以buf為首位址的位元組儲存區中,存放著乙個以』$'作結束標誌的字串,試編寫程式,在crt上顯示該字串,並要求將小寫字母以大寫字母形式顯示出來

**如下

data segment

buf db 'sdkj*@claf$'

count equ $-buf

msg1 db 0ah,0dh,'before the transformation:$'

msg2 db 0ah,0dh,'after the transformation:$'

data ends

code segment

assume cs:code, ds:data

start:

mov ax, data 初始化資料

mov ds, ax

mov bx,offset buf 將buf的偏移位址給bx

mov cl, count 用cl儲存字串的長度

mov dx,offset msg1 顯示msg1字串

mov ah,9

int 21h

lea dx,buf 顯示buf裡儲存的原字串

mov ah,9

int 21h

lp:

mov al,[bx] al存放字串的內容

cmp al,61h 與小寫字母a進行比較

jb x 如果該字元的asc碼小於a,則跳轉至x

cmp al,7ah 與小寫字母z進行比較

ja x 如果該字元的asc碼大於z,則跳轉至x

sub al,20h 如果該字元asc碼在小寫字母範圍內,則轉換成大寫字母

mov [bx],al 儲存至bx

x: inc bx bx指向下乙個位元組單元

dec cl cl減一

jnz lp cl不為0,則判斷沒結束,繼續跳轉至lp

mov dx, offset msg2 顯示字串msg2

mov ah,9

int 21h

lea dx,buf 顯示轉換後的字串

mov ah,9

int 21h

mov ah, 4ch 停止程式,返回dos

int 21h

code ends 結束

end start

彙編作業題2

2 1下面的mov指令完成什麼操作?a mov ax,bx 把bx的內容移動到ax中 c mov bl,ch 把ch的內容移動到bl中 2 2 列出暫存器定址使用的8位暫存器 答 ah al bh bl ch cl dh和dl 2 3列出暫存器定址使用的16位暫存器 答 ax bx cx dx si...

課程作業 資料結構與演算法C (1)

課程作業6 歸併排序 氣泡排序 插入排序 選擇排序 歸併排序 氣泡排序 插入排序 選擇排序 主程式 include includeusing std vector using std cout using std endl using std swap include bubble sort.h i...

物件導向程式設計寒假作業1 程式設計題

這個作業屬於哪個課程 2020物件導向程式設計張棟班 這個作業要求在 物件導向程式設計寒假作業1 這個作業的目標 按照要求完成簡單文言文程式設計的相關功能 其他參考文獻 無ps 因為能力有限加上本人有點懶,所以該程式僅支援資料範圍在0 99內的處理和很差的錯誤提示以及 不夠簡練,如有大佬發現我的 有...