匯程式設計序 哆瑞公尺發商拉西

2021-09-21 03:28:59 字數 931 閱讀 5985

【任務】

編乙個程式,讓計算機演奏出七個不同音高的音符

【參考解答】

assume cs:codeseg

data segment

dw 262,294,330,349,392,440,494,524

codeseg segment

start:

mov ax, data

mov ds, ax

mov si, 0

mov bl,8

play:

mov al,0b6h ;8253初始化

out43h,al ;43h是8253晶元控制口的埠位址

mov dx,12h

mov ax,34dch

div word ptr [si] ;設定聲音的頻率

out42h, al

mov al, ah

out42h, al

in al, 61h ;讀裝置控制器埠原值

mov ah, al ;儲存原值

or al, 3

;開啟揚聲器和定時器

out61h, al ;接通揚聲器,發聲

mov dx, 10

;延時delay0:

mov cx, 60000

delay1:

nop loop delay1

dec dx

jne delay0

mov al, ah ;恢復埠原值

out61h, al

add si, 2

dec bl

jne play

mov ax, 4c00h

int 21h

codeseg ends

end start

匯程式設計序 退出

作為第乙個匯程式設計序,本程式除了退出以外,並沒有執行其他的功能。目的 退出並向linux核心返回乙個狀態碼的簡單程式 輸入 無 輸出 返回乙個狀態碼.在執行程式後可通過輸入echo 來讀取狀態碼 變數 eax儲存系統呼叫號 ebx儲存返回狀態 section data section text g...

微機匯程式設計序

又是自學的一學期,呵呵。學到最後也就知道零星半點指令吧,複雜的程式可能還是不怎麼會寫,熟練當然也不敵c了,但是彙編之於嵌入式,往上走肯定少不了遇到,學好還是必要的!此次僅作入門吧。今日所學,明日之用。1 統計正負零的個數 datas segment array db 1,2,1,0,2,0,2,4,...

匯程式設計序呼叫c程式

首先是匯程式設計序,還是前面的例子,只是加了2行程式 extern main 說明這個函式從外面程式獲得 section data charact db a section text global start start mov ecx,charact push ecx call usestack ...