计算机原理汇编程序实验报告的总结,计算机组成原理与汇编语言程序设计实验报告.doc...

本文详细介绍了使用DEBUG工具进行汇编语言编程的实验,包括查看CPU和内存、修改内存内容、执行指令等操作。实验内容涵盖了从基本的DEBUG命令使用到编写并执行简单的汇编程序,如数据的存储和运算。通过这些实验,读者可以深入理解计算机组成原理和汇编语言的基础知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

计算机组成原理与汇编语言程序设计实验报告

计算机组成原理与汇编语言程序设计实验报告

实验一

实验内容:查看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 E2 F8 .&..C..

-d es:0 16

0020:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值