汇编实验12

assume cs:codesg
codesg segment
  
 start:
        ;
设置源地址与目的地址,并使用movsb传送
        mov ax,
cs
        mov ds, ax
  
     mov si, offset do0
      
 mov ax, 0
        mov es,
ax
        mov di, 200h
  
     mov cx, offset do0_end - offset do0
  
     cld
        rep
movsb
        
  
     ;  设置向量表
      
 mov ax, 0
        mov es,
ax
        mov word ptr es:[0],
200h
        mov word ptr es:[2],
0
        
      
 ;  
 激发一个除法溢出,后来证明其它程序有除法溢出时也会打印do0里的字符串,说明内存中的数据被改变。
  
     ;  
 重启电脑后无效,说明中断程序重新加载,疑问,加载的源程序信息在哪???继续学习之路吧
  
     mov ax, 1000
      
 mov bl, 1
        div bl
  
     
        mov ax,
4c00h
        int 21h
  
     
    do0:
  
     jmp short do0_start
      
 db ‘divide error!‘   ; 13个字符
  
 do0_start:
        mov ax,
cs
        mov ds, ax
  
     mov bx, 202h      
 ;  do0 最前面的jmp指令长度忘了,打印出来开始两个字符是乱码,貌似有$符
  
     mov cx, 13
      
 
        mov ax, 0b800h
  
     mov es, ax
        mov
di, 12*160+5*2    ;  12行,第5列,1
颜色不设置看会输出什么,结果黑底白色
        mov ah,
24h
    loop_do0:
        mov
al, [bx]
        mov es:[di],
ax
        inc bx
  
     add di, 2
        loop
loop_do0

        mov ax,
4c00h
        int 21h
  
 do0_end:
        nop
  
 
codesg ends
end start

时间: 2024-11-07 22:52:44

汇编实验12的相关文章

汇编实验课程设计1之设置时间半成品

;    感觉双休就想睡觉,这鬼天气,一直下雨.设置时间未完成,只是加了一个所谓的主界面;   display system time. press f1 to change the color displayed, press esc to return main list. f3 exit;    clear_screen 清空屏幕assume cs:codesgstacksg segment    dw 128 dup(0)stacksg endscodesg segment      

王爽汇编实验九

1 ;实验九 2 assume cs:code,ds:data 3 data segment 4 db 'welcome to masm!' 5 data ends 6 7 code segment 8 start : 9 mov ax,data 10 mov ds,ax;定义数据段 11 12 mov ax,0B800h 13 mov es,ax;定义显示段 14 15 mov cx,16 16 mov si,0 17 mov di,10*160+80 ;将输出显示放在第10行中间 18 19

汇编实验:彩色字符中间位置显示字符串

汇编实验九:在屏幕中间位置显示三行彩色字符串 80*25彩色字符模式显示缓冲区在B8000H到BFFFFH位置.一行80个字符号,160个字节.其中每个字的低位存储ASC2码,高位存储字符颜色属性.属性格式: 7 6 5 4 3 2 1 0 BL R G B I R G B7闪烁: 6.5.4背景: 3高亮: 2.1.0前景 0 1 0 0 1 0 1 0 4ah 0 1 0 0 0 1 0 1 45h 0 0 1 0 0 0 0 1 21h 1 assume cs:codes,ds:dates

王爽汇编10.12

;10.12 assume cs:code,ds:data data segment db 'word',0 db 'unix',0 db 'wind',0 db 'good',0 data ends code segment start : mov ax,data mov ds,ax mov si,0 mov di,16 mov cx,4 s: call cap inc si loop s MOV AX,4C00H INT 21H cap: push cx tip: mov cl,[si] m

王爽汇编实验十一

;实验11 ;把小写字母换成大写字母 assume cs:code , ds:data data segment db "Beginner's All-purpose Symbolic Instruction Code.",0 data ends code segment start: mov ax,data mov ds,ax mov si,0 call letterc mov ax,4c00h int 21h letterc: push ax push si fun: mov al

Cisco PT模拟实验(12) 路由器静态路由的配置

Cisco PT模拟实验(12) 路由器静态路由的配置 实验目的: 掌握静态路由的配置方法和应用 掌握路由选择表中的路由描述 熟悉路由选择和分组转发的原理及过程 实验背景: 某公司除总部外,另有一处分部,并且都有一个独立的局域网,为了使公司各部之间能相互通信,共享资源.每个出口利用一台路由器进行连接,两台路由器间公司申请了一条DDN专线(数字数据网)进行相连,要求做适当配置实现相互访问. 技术原理: 路由器属于网络层设备,能够根据IP数据报的首部信息,选择一条最佳路径(这一过程称为"路由选择&q

汇编实验1及博客初尝试

Part 1 这一篇博客应该不是传说中的技术博客.初闻博客该是小学的计算机课,那个时候老师教我们注册邮箱注册博客注册论坛.注册完了我们便去玩植物大战僵尸,不用动脑子的重复性操作.计算机老师也和我们探究了游戏的本质.一次一次的重复性操作.注册博客似乎要用到邮箱,邮箱无论是账号还是密码总是忘啊,这一周上课,下一周再用,账号密码不记得了.依稀记得计算机老师教我们骗过注册博客必须填邮箱的方法,手机号[email protected]或是[email protected].小学时写过第一篇博客.写了什么不

ICS2019-Linux汇编实验指导

ICS2019-Linux汇编实验指导 一. 首先安装NASM 1. 先判断系统是否已经安装了nasm 打开终端,执行  whereis nasm :如果显示nasm: /usr/bin/nasm ,则已经安装:如果只显示nasm:,则未安装. 如下图 则是未安装状态 2.下载NASM 点击这个链接下载 3.按照下面步骤安装nasm 依次输入以下命令 tar xzvf nasm-2.14.02.tar.gz  //  解压nasm cd nasm-2.14.02   // 进入目录 ./conf

汇编实验五 编写、调试具有多个段的程序

南京信息工程大学实验报告 实验名称   实验 5 编写.调试具有多个段的程序 实验日期  12.2 得分 学院   计软院 专业   计科 年级   2017级 班次    6班 姓名    江轲禹 学号    20171308227 一.实验目的 1. 理解和掌握将数据.代码.栈放入不同段的程序的编写和调试 2. 理解具有多个段的汇编源程序对应的目标程序执行时,内存分配方式 二.实验准备 1. 结合第6章教材和课件,复习第6章内容 2. 复习第3章「栈」的知识 三.实验内容 教材133实验 5