内存地址[bx+idata]、[bx+si/di]、[bx+si/di+idata]的灵活定位

本文介绍了如何通过汇编语言实验掌握and和or指令的运用,以及如何使用[bx+idata]、[bx+si/di]等指令灵活定位内存地址。实验内容包括大小写的转换,利用Debug调试,并分享了实验过程中的心得体会。
摘要由CSDN通过智能技术生成

内存地址[bx+idata]、[bx+si/di]、[bx+si/di+idata]的灵活定位

一. 实验目的

1、 掌握and和or指令的用法。
2、灵活运用[bx+idata]、[bx+si/di]等指令定位内存地址。
3、利用不同寻址方式实现大小写的转换问题。

二.实验内容

1、 利用[bx+idata]、[bx+si/di]等指令实现大小写的转换。
2、 不同寻址方式的灵活运用。
3、 Debug调试追踪。

三. 实验步骤

(1) 编写源程序。
(a) 将datasg段中每个单词的1、3、5位改为大写。

assume cs:codesg,ds:datasg
datasg segment
     db 'integer         '
     db 'integent        '
     db 'notebook        ’
     db 'company         ’
     datasg ends
     codesg segment
     start:
     mov ax,datasg
     mov ds,ax
     mov bx,0
     mov cx,4
     s:mov al,[bx+0]
       and al,01111111B
       mov al,[bx+2]
       and al,11011111B
       mov al,[bx+4]
       and al,11110111B
       mov [bx+4],al
       add bx,16
     loop s   
codesg ends
end start    

(b) 编写程序,将datasg段中每个单词的前4个字母改为大写。

assume cs:cod
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值