组合语言与系统程式.ppt

上传人:本田雅阁 文档编号:2754155 上传时间:2019-05-11 格式:PPT 页数:52 大小:582.51KB
返回 下载 相关 举报
组合语言与系统程式.ppt_第1页
第1页 / 共52页
组合语言与系统程式.ppt_第2页
第2页 / 共52页
组合语言与系统程式.ppt_第3页
第3页 / 共52页
组合语言与系统程式.ppt_第4页
第4页 / 共52页
组合语言与系统程式.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《组合语言与系统程式.ppt》由会员分享,可在线阅读,更多相关《组合语言与系统程式.ppt(52页珍藏版)》请在三一文库上搜索。

1、組合語言與系統程式,軟體使用教學(中文詳細版),軟體介紹,sicasm SIC assembler sic language program - object program sicsim SIC simulator 執行object program,sicasm SIC assembler,sicasm SIC assembler,支援SIC 不支援STSW這個指令 Use ASCII code External files: Input file: SRCFILE Output file: OBJECT、INTFILE、LISFILE,sicasm SIC assembler -檔案與as

2、sembler關係圖,sicasm SIC assembler,SRCFILE 攥寫SIC program處 Source format(請務必依照此格式寫) Bytes 1-8 label 9 blank 10-15 operation code (or assembler directive) 16-17 blank 18-35 operand 36-66 comment Blank不可以用tab取代,兩者的ASCII code是不同的,sicasm SIC assembler,SRCFILE英文字母為大寫英文字母,sicasm SIC assembler,OBJFILE 組譯(執行sic

3、asm)後,此處會產生object program,sicasm SIC assembler,LISFILE 列出組譯狀況,sicasm SIC assembler,當成是有錯,LISFILE會出現錯誤訊息 由於沒有宣告ZERO變數,所以出現找不到operand的錯誤訊息,sicasm SIC assembler,INTFILE 這個檔案列出組譯器組譯過程中產生的中間處理過程,sicsim SIC simulator,sicsim SIC simulator,支援SIC 和 SIC/XE Main memory size 最大為2FFF(可更改) Use ASCII code External

4、 files: Input file: DEV00、DEVF1、DEVF2、 DEVF3 Output file: DEV04、DEV05、DEV06、LOG,sicsim SIC simulator -檔案與simulator關係圖,sicsim SIC simulator -處理過程,sicsim SIC simulator -處理過程,sicsim SIC simulator -處理過程,sicsim SIC simulator -處理過程,sicsim SIC simulator -處理過程,sicsim SIC simulator -Input file,DEV00: object

5、program of bootstrap 當電腦開機或是重新啟動時,會執行bootstrap bootstrap的功能為:載入第一個在電腦執行的程式 通常第一個在電腦執行的程式為OS 而這個simulator處理的工作較為簡單,所以此處指的是loader,sicsim SIC simulator -Input file,DEV00: object program of bootstrap 請勿更改內容,sicsim SIC simulator -Input file,DEVF1: object program of loader loader的功能為: 把要執行的object program載

6、入到memory中 載入完畢後,跳到指定的位址,開始執行載入的程式 指定的位址通常指程式的起始位址 ex.下列範例的起始位址1000,sicsim SIC simulator -Input file,DEVF1: object program of loader 請勿更改內容,sicsim SIC simulator -Input file,DEVF2: OBJFILE 攥寫程式經過sicasm.exe組譯出來的object program,sicsim SIC simulator -Input file,DEVF3:Input device 要輸入程式的input data,sicsim S

7、IC simulator -Output file,DEV04、DEV05、DEV06:output device 程式要寫出的output data,sicsim SIC simulator -Output file,LOG: 執行sicsim的過程,sicsim SIC simulator -執行步驟,將OBJFILE內容複製到DEVF2執行sicsim,出現輸入指令提示 輸入英文字母為大寫英文字母,sicsim SIC simulator -執行指令,DUMP 顯示register和memory的內容 D R 顯示register D startaddr-endaddr 顯示memory

8、,位址算法請看下一張 startaddr為起始位址 endaddr為結束位址 Memory顯示範圍最大320bytes D R, startaddr-endaddr ,位址算法,sicsim SIC simulator -執行步驟,D R,0-9F 顯示register和0000009F的memory內容,sicsim SIC simulator -執行畫面,此時還沒啟動,memory中沒有內容(都還是預設值F),sicsim SIC simulator -執行指令,START 輸入S 將DEV00的bootstrap讀入memory中,sicsim SIC simulator -執行步驟,S

9、 D R,0-9F,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行指令,HCOUNT 設定一次執行多少個指令 H n n 為要設定的指令個數 Ex. H 50 一次執行50個指令 n 值為14個十進位的數字 最大值為9999 n 預設值為1000,sicsim SIC simulator -執行步驟,H 5000 設定一次執行5000個指令,sicsim SIC simulator -執行指令,BKPT 設定breakpoint控制指令執行 B address H 5000 設定一次執行5000個指令;但執行時可能會超過所要執行的範圍 E

10、x. 只要執行2000個指令 所以可以設定breakpoint,當執行到breakpoint時,會暫停執行,出現 BREAKPOINT REACHED訊息 之後繼續按R還是會執行下一個指令,所以可以設定breakpoint作為debug工具,sicsim SIC simulator -執行步驟,B 00E2 設定00E2是因為,loader做完object program (DEVF2)全部載入memory的停止點 換言之,當遇到第一次的breakpoint就代表已經把程式全部載入memory中 下一個執行的指令,就開始執行攥寫的程式,sicsim SIC simulator -執行指令,RU

11、N R 執行 R address 設定下一個要執行的指令起始位址 Ex. R 1015,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行步驟,R D R,80-10F,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行指令,ENTER 輸入register和memory的值 E Rn xxxxxx 輸入值到register;Rn為register identifier (RA, RX, RL, etc.) Register 為3bytes,3bytes的值都要輸入 E address xx

12、xx 輸入值到memory中,從起始位址開始輸入 不規定要輸入幾個bytes,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行步驟,E RA 123456 將register A的內容改為123456 D R,80-8F,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行步驟,E 80 12345678 從起始位址80開始輸入值12345678 D R,80-8F,sicsim SIC simulator -執行畫面,sicsim SIC simulator -執行指令,QUIT 結束使用simulation Q,Debug的小方法,利用breakpoint Ex.在位址1020,會將register A的值加1,總共加10次 方法:breakpoint設為1020,觀察每次是否都將register A的內容加1,Debug的小方法,利用h n 可將n設為1 每次執行1個指令,看register和memory的變化,是否與程式設定相同,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1