• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 79  文章 - 58  trackbacks - 0
            <2007年7月>
            24252627282930
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            常用鏈接

            留言簿(9)

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            搜索

            •  

            積分與排名

            • 積分 - 295382
            • 排名 - 87

            最新評論

            閱讀排行榜

            評論排行榜

            這個程序用于是程序啟動后顯示系統時間,但是顯示的不對,請大蝦幫忙看看
            這是這段代碼運行效果,顯示的年月日都變成秒了


            assume cs:code
            code Segment
            start:
               cli ;避免在設置堆棧時中斷
               mov ax,0             ;mov ax,cs
               mov ss,ax
               mov sp,7c00h
               sti
               mov ax,0
               mov es,ax   ;要讀的內存基址
               mov bx,800h ;要讀的內存偏移
               
               mov ah,2   ;功能號,讀
               mov al,3   ;讀三個扇區
               mov ch,0   ;磁道號
               mov cl,2   ;扇區號
               mov dl,0   ;驅動器號
               mov dh,0   ;磁頭號(面)
               int 13h   
               
               ;置CS,IP
               mov ax,0
               mov bx,800h
               push ax
               push bx
               retf
               ;湊足一個扇區,主要滿足int 19 對'55AA'標志的要求
               db 469 dup('A')
               db 85,170 ;55AA

            T:jmp RealPrograme
            data db 9,8,7,4,2,0
            db '// :: '
            RealPrograme:     
                  mov ax,cs
                  mov ds,ax
                  mov si,offset data
                  mov di,0
                  mov cx,6
            s:   
                  push cx
                  mov al,ds:[si]
                  out 70h,al
                  in al,71h
                  mov ah,al
                  mov cl,4
                  shr ah,cl
                  and al,00001111b
                  add ah,30h
                  add al,30h
                  mov dl,71h
                  mov bx,0b800h
                  mov es,bx
                  mov byte ptr es:[di].[160*12+40*2],ah
                  mov byte ptr es:[di].[160*12+40*2+1],dl
                  add di,2
                  mov byte ptr es:[di].[160*12+40*2],al
                  mov byte ptr es:[di].[160*12+40*2+1],dl
                  ;inc si
                  add di,2
                  mov al,ds:[si].[6]
                  mov byte ptr es:[di].[160*12+40*2],al
                  mov byte ptr es:[di].[160*12+40*2+1],dl
                  add di,2
                  inc si
                  pop cx   
                  loop s
               jmp RealPrograme
            code ends
            end start


             

            posted on 2007-06-25 22:16 merlinfang 閱讀(1325) 評論(1)  編輯 收藏 引用 所屬分類: 匯編語言

            FeedBack:
            # 終于找到原因了 2007-07-03 22:37 merlinfang
            使用如下程序替換設置ds與si的部分,主要原因是使用靜態地址分配,因此只有采用標號差來計算距離數據區的長度,最終確定數據區的位置。

            mov ax,0
            mov ds,ax
            lea bx,T
            lea ax,data
            sub ax,bx
            add ax,800h
            mov si,ax
              回復  更多評論
              
            99久久亚洲综合精品成人| 一本综合久久国产二区| 欧美日韩精品久久免费| 国内精品久久久久久中文字幕 | 午夜精品久久久久久影视777| 9久久9久久精品| 亚洲日韩中文无码久久| 精品国产日韩久久亚洲| 久久夜色精品国产噜噜亚洲a| 人妻系列无码专区久久五月天| 精品久久久久中文字| 日韩欧美亚洲综合久久影院d3| 99久久国语露脸精品国产| 91久久精一区二区三区大全| 国内精品伊人久久久久av一坑 | 国产一区二区精品久久岳| 精品综合久久久久久97超人 | 久久天天躁狠狠躁夜夜躁2014| 热RE99久久精品国产66热| 久久精品无码一区二区三区免费| 久久精品国产99久久久香蕉| 手机看片久久高清国产日韩| 久久久黄色大片| 人妻无码αv中文字幕久久 | 久久99精品国产99久久| 国产99精品久久| 精品久久久久久无码国产| 亚洲国产精品综合久久一线| 色播久久人人爽人人爽人人片AV| 亚洲伊人久久精品影院| 伊人久久大香线焦综合四虎| 很黄很污的网站久久mimi色| 久久免费香蕉视频| 久久精品国产亚洲AV不卡| 国产高潮国产高潮久久久| 91久久精品电影| 欧美亚洲国产精品久久久久| 日韩AV无码久久一区二区| 99久久婷婷国产综合精品草原| 久久婷婷是五月综合色狠狠| 久久99国产乱子伦精品免费|