汇编语言 第二次作业_第1页
汇编语言 第二次作业_第2页
汇编语言 第二次作业_第3页
汇编语言 第二次作业_第4页
汇编语言 第二次作业_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、汇编语言 第二次作业内容:课本实验3,4,5实验3:实验4:4-1代码:code segment assume cs:codestart: mov ax,0 mov ds,ax mov bx,23fh mov cx,3fh s: mov bx,cl dec bx loop s mov ax,4c00h int 21hcode ends end start截图:4-2代码:code segment assume cs:codestart: mov ax,0 mov ds,ax mov bx,23fh mov cx,3fh s: mov bx,cl dec bx loop s mov ax,4c0

2、0h int 21hcode ends end start截图:4-3代码:assume cs:codecode segment mov ax,cs; mov ds,ax mov ax,0020h mov es,ax mov bx,0 mov cx,10h; s: mov al,bx mov es:bx,al inc bx loop s mov ax,4c00h int 21hcode endsend截图:实验5:5-1代码:assume cs:code,ds:data,ss:stackdata segment dw 0123h,0456h,0789h,0abch,0defh,0fedh,0c

3、bah,0987hdata endsstack segment dw 0,0,0,0,0,0,0,0stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds,ax push ds:0 push ds:2 pop ds:2 pop ds:0 mov ax,4c00h int 21hcode endsend start截图:(1)CPU执行程序,程序返回前,data段中的数据不变。(2)CPU执行程序,程序返回前,cs=076CH、ss=076BH、ds=076AH.(3)设程序加载后,code

4、段的段地址为X,则data段的段地址为X-2,stack段的段地址为X-1。5-2代码assume cs:code,ds:data,ss:stackdata segment dw 0123H,0456Hdata endsstack segment dw 0,0stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds,ax push ds:0 push ds:2 pop ds:2 pop ds:0 mov ax,4c00h int 21hcode endsend start截图:(1)CPU执

5、行程序,程序返回前,data段中的数据不变。(2)CPU执行程序,程序返回前,cs=076CH、ss=076BH、ds=076AH.(3)设程序加载后,code段的段地址为X,则data段的段地址为X-2,stack段的段地址为X-1。(4)对于如下定义的段:name segmentname ends如果段中的数据占N个字节,则程序加载后,这段实际占有的空间为(N/16+1)*16。5-3代码:assume cs:code,ds:data,ss:stackcode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ax,data mov ds

6、,ax push ds:0 push ds:2 pop ds:2 pop ds:0 mov ax,4c00h int 21hcode endsdata segment dw 0123H,0456Hdata endsstack segment dw 0,0stack endsend start截图:(1)CPU执行程序,程序返回前,data段中的数据不变。(2)CPU执行程序,程序返回前,cs=076CH、ss=076BH、ds=076AH.(3) 设程序加载后,code段的段地址为X,则data段的段地址为X+3,stack段的段地址为X+4。(4) 如果将(1)、(2)、(3)题中的最后一条

7、伪指令“end start”改为“end”(也就是说不指明程序的入口),则那个程序仍然可以正确执行?请说明原因。解:程序都可以正确执行,因为去掉start后,由于没有的标志,系统会将从code段的起始位置当作程序代码的开始处,然后一直执行下去,而这三个程序在start前没有其他的内容,去掉start也就不影响期功能了。5-5代码:assume cs:codea segment db 1,2,3,4,5,6,7,8a endsb segment db 1,2,3,4,5,6,7,8b endsc segment db 0,0,0,0,0,0,0,0c endscode segmentstart: mov ax,a mov ds,ax mov bx,0 mov cx,8s: mov al,ds:bx add al,ds:bx+16 mov ds:bx+32,al inc bxloop s mov ax,4c00h int 21hcode endsend start截图:5-6代码:assume cs:codea segment dw 1,2,3,4,5,6,7,8,9,0ah,0bh,0ch,0dh,0eh,0fh,0ffha endsb segment dw 0,0,0,0,0,0,0,0b endscode segmentstart: mov ax,a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论