freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

第六章子程序設計-資料下載頁

2025-10-08 16:34本頁面

【導讀】《IBMPC80X86匯編語言程序設計》冶金工業(yè)出版社。第六章子程序設計。的程序段寫成程序模塊,該模塊可被多次調用,④可遞歸性和可重入性。子程序的定義是由過程定義偽指令PROC和ENDP. 過程名是過程入口地址的符號表示。一般過程名同標號一樣,具有三種屬性,即段。IP←IP+(子程序入口地址與CALL之間的偏?;氐紺ALL指令的后續(xù)指令繼續(xù)執(zhí)行。部分、恢復現(xiàn)場、那些改變,那些不變。例6-3:將在BUFFER為首地址的緩沖區(qū)的一個字符串中的所。有大寫字母都轉換成小寫字母,并在屏

  

【正文】 0X86匯編語言程序設計》 冶金工業(yè)出版社 例:多模塊程序設計。 ( ) 其中模塊 符串至 BUF緩沖區(qū),調用 , BUFF的內容 。 多模塊程序設計中,只有主模塊中需要返回 DOS語句,子模塊不需要。 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 public buff extrn disp:far extrn cr: far data segment Buf db 10,?,10 dup(?),39。$’ data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax lea dx,buff mov ah,10 int 21h call far ptr cr call far ptr disp mov ah,4ch int 21h code ends end start 模塊 模塊 extrn buff:byte public disp public cr code segment assume cs:code disp proc far mov ax,seg buff mov es,ax lea dx,es:buff+2 mov ah,9 int 21h ret disp endp cr proc far mov dl,13h mov ah, 2 int 21h mov dl, 10h mov ah, 2 int 21h ret cr endp code ends end 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 八、匯編語言和高級語言的混合編程 ?調用協(xié)議 ?TC與匯編的模塊連接法 ?嵌入式匯編 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 TC調用匯編語言 TC與匯編模塊連接的約定規(guī)則如下: ( 1)存儲器使用約定: TC應與匯編語言采用相同的存儲模式,以便編譯產生正確的可執(zhí)行文件。 ( 2)匯編語言中被 TC語言所引用的子程序或變量名前面需加上下劃線 “ _” ( 3) TC對所調用的匯編語言的子程序、變量等采用EXTERN說明;在匯編語言中需將被調用的子程序或變量用 PUBLIC操作符定義。 ?調用協(xié)議 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 ( 4) 匯編語言與高級語言程序間的參數(shù)傳遞 ,一般采用堆棧來傳遞 ,即調用程序將參數(shù)依次壓入堆棧中 ,被調程序再從堆棧中依次彈出參數(shù)作為操作數(shù)使用 。 ( 5) 匯編子程序在執(zhí)行完 , 返回值是按如下規(guī)則保存的: 如果返回值為字節(jié)數(shù)據(jù) , 送 AL寄存器; 如果返回值為字數(shù)據(jù) , 送 AX寄存器; 如果返回值為雙字數(shù)據(jù) , 送 DX: AX寄存器 ( 其中 DX為高字單元 ) 。 ( 6) 匯編程序和 TC程序各自獨立匯編成 OBJ文件 ,在 TC下 , 將兩個 OBJ文件連接成 EXE可執(zhí)行文件 。 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 匯編語言調用 TC ( 1) 首先應在 TC程序中說明匯編語言所引用的變量或程序是全局的 。 ( 2) 在匯編語言中用 EXTRN偽指令聲明所引用的 TC子函數(shù)和變量 。 ( 3) 按照 C語言的調用協(xié)議將參數(shù)壓棧 。 ( 4) 匯編語言的調用用 CALL指令 。 ( 5) 返回值從 AL、 AX或 DX: AX中獲得 。 ( 6) TC程序和匯編程序各自獨立編譯生成 OBJ文件 。 在匯編語言下用 TASM/MASM生成可執(zhí)行 EXE文件 。 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 ?TC與匯編的模塊連接法 例 使用 C語言調用匯編子程序,實現(xiàn)字符串顯示。 ;匯編語言子程序 .model small ; 采用小型存儲模式 .data mesg db 39。Hello, world! $39。 .code public _display _display proc ; 過程名加上下劃線 mov ah, 9 ; 小型模式不必設置 DS mov dx, offset mesg int 21h ret _display endp end 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 /*C語言程序 */ extern void display( void) ; /* 說明 display是外部函數(shù) */ main( ) { display( ) ; } 編譯連接時在 DOS提示符下輸入如下命令: tasm 。匯編 tcc ms –c ; 按小模式編譯 tlink lib\c0s display hello,display,lib\cs 。連接目標文件為 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 ?嵌入式匯編 嵌入式匯編也稱行內匯編,指的是在 C語言中直接使用匯編語言語句,它的特點是簡潔直觀。 嵌入?yún)R編語言的語法如下: asm 操作碼 操作數(shù) ;或是換行符 注意: 這里的分號 ‘ ; ’ 不是匯編語言中起注釋作用的分號,而是作為語句的分隔符。 若要嵌入一組匯編語句,則需要用括號 ? {}? 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 例 在 C語言源程序中嵌入?yún)R編語言語句實現(xiàn)賦值語句 A=A+B+C, 其中: A、 B、 C都是整型變量 。 /*程序名為 */ # includestdio. h int add(int A, int B, int C) { asm push ax /*實現(xiàn)整型變量 A=A+B+C*/ asm mov ax, A asm add ax, B asm add ax, C asm mov A, ax asm pop ax } 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社 main( ) { int A, B, C; A =4; B =11; C =5; print ( The result is %d, add( A, B, C) ) ; } 匯編時鍵入 Tcc b – ms – c – ltaddEnter 在連接時鍵入 Tlink lib\c0s ltadd, ltadd, lib\csEnter 從而得到 第 6章 《 IBM PC 80X86匯編語言程序設計》 冶金工業(yè)出版社
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1