- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机组成原理汇编语言程序设计实验报告
计算机组成原理与汇编语言程序设计实验报告
实验一
实验内容:查看CPU和内存,用机器指令和汇编指令编程。
实验任务:
(1)了解并熟悉WINDOW中DEBUG工具.DEBUG的命令及功能如下:
*r【register】命令用于查看、改变寄存器的内容;
r
r ax
*d【不懂为什么叫D】查看内存的内容;
d [段地址]:[偏移地址],段地址可以用CS,DS,SS,ES代替
*e 【edit】改写内存的内容
e [段地址]:[偏移地址] {依次填入要赋值的数字,每个字节检用空格间隔开}
*a 【asm,,嘿嘿,我自己猜的,】以汇编的形式向内存写入东西
a [段地址]:[偏移地址]如果没有指定,一开始是CS:IP,其他的时上一次修改的末尾。
*u 【英文不好,不懂,,估计是un-ooxx反汇编吧】将内存中的机器码以汇编指令显示出来
格式和a命令一样
*t 【真不懂】执行CS:IP指向的命令
(2)用A、E命令向2000:0内存中写入以下命令,并执行
mov ax,1
add ax,ax
jmp 2000:0003
计算机组成原理与汇编语言程序设计实验报告
实验二
实验内容:用机器指令和汇编指令编程
实验任务:
(1)预备知识:
了解DEBUG是如何执行D命令的
在E,A,U命令中使用段寄存器
mov ss,ax mov sp,100
(2)使用DEBUG执行一段程序
-a
13B4:0100 mov ax,ffff
13B4:0103 mov ds,ax
13B4:0105 mov ax,2200
13B4:0108 mov ss,ax
13B4:010A mov sp,0100
13B4:010D mov ax,[0]
13B4:0110 add ax,[2]
13B4:0114 mov bx,[4]
13B4:0118 add bx,[6]
13B4:011C push ax
13B4:011D push bx
13B4:011E pop ax
13B4:011F pop bx
13B4:0120 push [4]
13B4:0124 push [6]
13B4:0128
计算机组成原理与汇编语言程序设计实验报告
实验三
实验内容:编程、编译、链接、跟踪
实验任务:
编译一个简单的汇编程序
assume cs:code
code segment
mov ax,1000h
mov ss,ax
mov sp,0100h
mov ax,1001h
mov ds,ax
;swap(ds:[0],ds[2])
push ds:[0]
push ds:[2]
pop ds:[0]
pop ds:[2]
mov ax,4c00h
int 21h
code ends
end
编译:
masm.exe code.txt
link.exe code.obj
pause
运行:
debug.exe code.exe
pause
计算机组成原理与汇编语言程序设计实验报告
实验四
实验内容:【BX】和LOOP的使用
实验任务:
编程,向内存0:200 ~0:23F一次存入数据0 ~63
assume cs:code
code segment
mov ax,0h
mov ds,ax
mov bx,200h ;start from 0:200
mov cx,64h ;loop for 64h times
mov ax,0h ;0h to 63h
lp: mov [bx],ax
inc ax; add the number
inc bx, ;move the address
loop lp
mov ax,4c00h
int 21h
code ends
end
编程,向内存0:200 ~0:23F一次存入数据0 ~63,程序中只能9条指令
下面的程序师将“MOV AX,40CCH‘之前的指令复制到内存中去,
assume cs:code
code segment
mov ax,cs
mov ds,ax
mov ax,0020h
mov es,ax
mov bx,0
mov cx,16h
s: mov al,[bx]
mov es:[bx],al
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end
-d cs:0 16
142D:0000 8C C8 8E D8 B8 20 00 8E-C0 BB 00 00 B9 16 00 8A ..... ..........
142D:0010 07 26 88 07 43
您可能关注的文档
最近下载
- 附着式升降脚手架施工方案范本.pdf VIP
- 小学四年级英语阅读理解30篇及小学四年级英语作文.doc VIP
- 电梯安装工程管理重难点分析.doc VIP
- 2025年保安员资格证考试题库大全(答案附后面).docx
- 【高考必备】高考总复习系列丛书-高三化学一轮复习考点优化设计(第五辑):考点六十三等效平衡Word版含解析[原创精品].doc VIP
- 米家小米智能门锁 E30使用说明书.pdf
- 统编版道德与法治八年级上册《诚实守信》说课课件.pptx VIP
- 第一单元峥嵘岁月 第1课情感表达 教学设计 人教版初中美术七年级上册.docx VIP
- 大班幼儿参与幼儿园物质环境创设的现状及提升策略.docx VIP
- 省优秀科组申报材料.pdf VIP
文档评论(0)