汇编网首页登录博客注册
caroline0712的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2009-04-15 12:08] 实验16

ASSUME CS:CODES
CODES SEGMENT

START:
    MOV AH,3;功能号
    MOV AL,01000010B;前景色,背景色的颜色设置
    
    MOV BX,0B800H
    MOV ES,BX 
       
    MOV DI,0
    MOV SI,0
    MOV CX,2000
PRINT:
    MOV BYTE PTR ES:[DI],CL
    MOV ES:[DI+1],00100100B
    ADD DI,2
    INC SI
    LOOP PRINT 
 ...
阅读全文 | 评论次数(1) | 浏览次数(676) | 所属类型(汇编作业)

[2009-04-12 21:10] 实验14

;以年/月/日 时:分:秒的格式 显示当前的日期和时间
DATAS SEGMENT
        DB 9,8,7,4,2,0
        DB 2FH,20H,3AH
DATAS ENDS

STACKS SEGMENT
        DB 2 DUP (0)
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
         MOV AX,DATAS
         MOV DS,AX         
         MOV AX,0B800H
    MOV ES,AX
 
    MOV DI,0
          MOV SI,0 
    M...
阅读全文 | 评论次数(2) | 浏览次数(672) | 所属类型(汇编作业)

[2009-04-11 13:19] 实验12

;问题:计算DO0的长度 ?avenue:利用编辑器计算DO0的长度 offset do0end-offset do0

;步骤: 1.安装DO0
;                3.设置中断向量表
;                4.写DO0中断处理程序

CODES SEGMENT
    ASSUME CS:CODES
START:
    ;do0安装程序:把DO0安装到0:200处
    CALL DO0INSTALL
    CALL INTERPUTTABLE
    
    MOV AX,1000H
    MOV BL,1
    DIV BL
    
    MOV AX,4C00H ...
阅读全文 | 评论次数(0) | 浏览次数(775) | 所属类型(汇编作业)

[2009-03-28 08:55] 第十章实验十程序三

;数值显示  改进版
;将DATA中的数据以十进制显示;
;将二进制信息存储的数据变为十进制形式的字符串
;
DATAS SEGMENT
    DB 6 DUP (0);用AX存储数据,最大为5位 ,所以分配6个db 
DATAS ENDS

STACKS SEGMENT
    DW 14 DUP(0)
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
    MOV AX,12666
    MOV BX,DATAS
    MOV DS,BX    
  ...
阅读全文 | 评论次数(3) | 浏览次数(769) | 所属类型(汇编作业)

[2009-03-27 19:50] 第十章实验十程序二

;解决除法溢出的问题  子程序divdw
    ;进行不会溢出的除法运算,被除数为DWORD型 除数为WORD型,结果为DWORD型
    ;参数:(AX)= 低16位;(DX)= 高16位;(CX)= 除数 
    ;返回:(DX)= 结果的高16位;(AX)= 结果的低16位;(cx)=余数
    ;公式: X/N = int(H/N)*65536+[rem(H/N)*65536+L]/N
CODES SEGMENT
    ASSUME CS:CODES
START:
    MOV AX,1000H
    MOV DX,1111H
    MOV CX,0...
阅读全文 | 评论次数(1) | 浏览次数(211) | 所属类型(汇编作业)

[2009-03-26 16:36] 第九章实验九

;在屏幕中分别显示绿色,绿底红色,白底蓝色的字符串‘WELCOME TO MASM!’
;在屏幕上显示 要显示的内容存到ES中
DATAS SEGMENT
    ;此处输入数据段代码
    DB 'WELCOME TO MASM!'
X   DB 01110010B
Y         DB 00100100B
Z   DB 01110001B
DATAS ENDS

STACKS SEGMENT
    ;此处输入堆栈段代码
    DB 0,0,0
STACKS ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS,SS:S...
阅读全文 | 评论次数(2) | 浏览次数(236) | 所属类型(汇编作业)

[2009-03-26 16:33] 第九章实验八

程序不能正确返回;当程序运行到JMP SHORT S时,跳转到S1,只执行了INT 21H 而没有MOV AH 4CH

看完留言之后,修改版:

果然调试之后发现可以正常退出:
主要原因是:
    MOV CS:[DI],AX指令
把:
    s: nop 
       nop

改变成了: 
    S2: JMP SHORT S1
而JMP SHORT S1 的位移为-10,所以跳转到了IP=0000H...
阅读全文 | 评论次数(2) | 浏览次数(266) | 所属类型(汇编作业)

[2009-03-26 11:04] 第八章实验七

;将DATA中的数据写入到TABLE段中,并计算21年中的人的平均收入(取整)
    ASSUME CS:CODES,DS:DATAS,SS:STACKS
DATAS SEGMENT
    ;21years
    db '1975','1976','1977','1978'
    db '1979','1980','1981','1982'
    db '1983','1984','1985','1986'
    db '1987','1988','1989','1990'
    db '1991','1992','1993','1994'
    db '19...
阅读全文 | 评论次数(2) | 浏览次数(251) | 所属类型(汇编作业)

[2009-03-25 09:15] 第七章实验六

(2)完成7.9中的程序
;把每个单词的前4个字母改写成大写
;caroline: usage of stack to store the tmp variable
STACKS SEGMENT
    ;此处输入堆栈段代码
    DW 8 DUP(0)
STACKS ENDS
        
DATAS SEGMENT
    ;此处输入数据段代码 
    DB        '1.  DiSpLay     '
    DB         '2.  browse                    '
    DB        '3.  replacement '
    DB        '4.  modify      '
DATAS EN...
阅读全文 | 评论次数(1) | 浏览次数(202) | 所属类型(汇编作业)

[2009-03-23 18:32] 第六章实验五

(1)
[1]DATA段中的数据为23 01 56 04 89 07 ef 0d ed 0f ba 0c 87 09
[2]CS=1443 ;SS=1441;DS=1431
[3]data的段地址为:X-2;stack段的段地址为:X-1

(2)
[1]data段中的数据为:23 01 56 04
[2]CS=1443,SS=1441;DS=1431
[3]DATA段的段地址为X-2,STACK的段地址为X-1
[4](N/8向上取整)*16个字节

(3)
[1]23 01 56 04
[2]CS=1441,SS=1441,DS=1431
[3]DATA段的段地...
阅读全文 | 评论次数(2) | 浏览次数(267) | 所属类型(汇编作业)
页码数(2):  1  2