1樓:
print macro para ;定義乙個巨集,這樣輸出字串的時候,可以省些事兒
lea dx,para
mov ah,9
int 21h
endm
data segment
msg1 db '請用拼音輸入姓名學號[格式為:xinming,xuhao$'
buffer db 50,52 dup(0)' ;為什麼是52?因為你可以輸入50個,而系統要用1個位元組,在後面放$也需要1個位元組
msg2 db 'xinming,xuhao'
crlf 0dh,0ah,24h
data ends
code segment
assume cs:code, ds:data
start: mov ax,data
mov ds,ax
print msg1 ;顯示「請輸入……」
lea dx,buffer
mov ah,0ah
int 21h
lea bx,buffer+2 ;下面幾句是利用輸入串的長度,來找到該串的尾部,以便填寫乙個'$'用做顯示時的結束。
mov al,[bx-1]
xor ah,ah
add bx,ax
mov al,24h
mov [bx],al
print crlf
print msg2
print buffer+2
mov ax,4c00h
int 21h
code ends
end start
由於我這裡沒有環境,程式沒法除錯,大致方法如此。
希望可以幫到你。
用組合語言編寫乙個簡單程式
2樓:匿名使用者
push ax
push bx
pop ax
pop bx
核心**
用組合語言編寫乙個簡單程式?
3樓:匿名使用者
如果不要求用函式子程式實現,右邊這個就是答案。
4樓:匿名使用者
右邊這個社組合語言,但是不是左邊的這個程式,那就不清楚了。
5樓:沙里波特
針對 5 個數,分別求其 sgn(x),程式並不難。
圖二的程式也算正確,但是,還不能說是「簡單」程式。
用組合語言怎麼編寫跑馬燈程式?
6樓:匿名使用者
跑馬燈程式用彙編是很好實現的,只要用好迴圈移位指令就可以,以下是程式。
org 0000h
ljmp main
org 0030h
main:
mov a,#0feh
loop:
mov p1,a ;將控制字送埠
rl a ;控制字迴圈左移
lcall delay ;延時
sjmp loop
delay: ;延時大概1秒
mov r2,#10
dly1:
mov r3,#200
dly2:
mov r4,#250
djnz r4,$
djnz r3,dly2
djnz r2,dly1
retend
用組合語言編寫乙個51微控制器的程式
7樓:郭田享
首先搞清led管是高電平導通還是低電平導通。
如果是低電平導通,p1賦0x00時,發光管全亮,0xff時,全滅。
具體程式:
#define uint unsigned int#define uchar unsigned charvoid delay(uint time_out)}}void main()
}程式大致如此,delay函式負責延遲500ms.有問題自己再除錯除錯
組合語言編寫乙個程式
用組合語言編寫乙個小小程式
8樓:匿名使用者
這個還不簡單#includevoid main()
用組合語言寫乙個程式
9樓:匿名使用者
datarea segment
string1 db 82 dup(?)
letter db 0
digit db 0
other db 0
datarea ends
prognam segment
main proc far
assume cs:prognam,ds:datareastart:
push ds
sub ax,ax
push ax
mov ax,datarea
mov ds,ax
lea bx,string1
mov dx,bx
mov al,80
mov [bx],al
mov ah,0ah
int 21h
inc bx
mov cl,[bx]
begin_:
inc bx
mov al,[bx]
cmp al,30h
jl other_
cmp al,3ah
jl digit_
cmp al,41h
jl other_
cmp al,5bh
jl letter_
cmp al,61h
jl other_
cmp al,7bh
jl letter_
other_:
inc other
jmp lp_
letter_:
inc letter
jmp lp_
digit_:
inc digit
lp_:
loop begin_
mov ah,02h
mov dl,0ah
int 21h
mov dl,0dh
int 21h
mov dl,letter
call output
mov dl,digit
call output
mov dl,other
call output
retmain endp
output proc near
add dl,30h
int 21h
mov dl,20h
int 21h
int 21h
retoutput endp
prognam ends
end start
letter是英文本元的個數
digit是數字字元的個數
other是其它字元的個數
三個加起來就是字串長度
用組合語言編寫程式計算y a
a.s檔案 syntax unified arch armv7 m cpu cortex m3 thumb y a x 2 b c int func1 int a,int b,int c,int x param r0 a,r1 b,r2 c,r3 x return y r0 global func1...
用組合語言編寫簡單程式,用組合語言編寫一個簡單程式
sweet馮 1.計算u x y z 100 w 其中 x,y,z,w均為十六位有符號數。程式如下 data segment x dw 10 16位變數 y dw 20 z dw 30 w dw 40 u dw data ends code segment assume cs code,ds dat...
用組合語言編寫延時1S的子程式,用組合語言編寫乙個延時1S的子程式
湯旺河邊 本程式通過編譯,執行正確 code segment assume cs code,ds code subroutine 延時指定的時鐘嘀嗒數 入口 didas 時鐘嘀嗒數 1秒鐘約嘀嗒18.2次,10秒鐘嘀嗒182次。若延時不是秒的10數次倍,誤差稍微大點 delay1s proc nea...