彙編程式高手進來看看,彙編程式高手進來看看

2021-05-14 12:33:18 字數 1447 閱讀 7866

1樓:楊_劉

出現的主要問題是向十進位制的轉換,如二進位制1010,在螢幕上並不顯示10,而要你轉換成十進位制後才顯示

基於你寫的程式思路比較亂,這是我寫的,能顯示數字最大數為65535data segment

str1 db 'input string,the end flag is $'

str2 db 'the number of figures:$'

data ends

code segment

main proc far

assume cs:code,ds:datastart:

mov ax,data

mov ds,ax

mov dx,offset str1;顯示str1mov ah,09h

int 21h

call crlf;呼叫回車換行子程式

mov bx,0;計數器

p1: mov ah,01h;迴圈接收直到$顯示數字個數並返回dos

int 21h

cmp al,'$'

je p2

cmp al,'0'

jl p1

cmp al,'9'

ja p1

inc bx;是數字計數器加1

jmp p1

p2: call crlf

mov dx,offset str2;顯示str2mov ah,09h

int 21h

call crlf

call bini;呼叫向十進位制轉換的子程式mov ah,4ch

int 21h

retmain endp

bini proc near;轉換為十進位制的子程式mov cx,10000d

call bin

mov cx,1000d

call bin

mov cx,100d

call bin

mov cx,10d

call bin

mov cx,1d

call bin

retbini endp

bin proc near

mov ax,bx

mov dx,0

div cx

mov bx,dx

mov dl,al

add dl,30h

mov ah,02h

int 21h

retbin endp

crlf proc near;回車換行子程式mov dl,0ah

mov ah,02h

int 21h

mov dl,0dh

mov ah,02h

int 21h

retcrlf endp

code ends

end start

2樓:王亮博

你寫的程式讓人看了 頭疼·

關於彙編程式問題,關於彙編裡子程式的問題

用組合語言程式設計如下 code segment assume cs code a dw 1357h 隨意定義兩個資料.b dw 2468h start mov ax,codemov ds,ax mov ax,a 開始處理.test ax,1 jnz a odd 為奇數轉移.mov bx,b tes...

求平均值的彙編程式

assume cs zxc,ds qweqwe segment org 0500h db 10h,20h,30h,40h,50h,60horg 0510h db qwe ends zxc segment bg mov ax,qwe mov ds,ax mov ax,0 mov si,0500h mo...

大家看看這段彙編程式那裡出錯了,快幫我看看這段彙編程式碼錯在哪裡

什麼會提示dao符號錯誤?說明 專我們寫錯了,導致屬編譯器以為它是符號.應該寫成 0b800h.其實仔細看看就好了,想學彙編就必須要細心再細心.彙編的語法最簡單,但是想要用來程式設計卻顯得結構非常複雜.除錯彙編 找錯有很多技巧的,比如 常用的 int 3 中斷.十六進位制數前面是字母的一定要加0 改...