【汇编语言】实验17-用逻辑扇区计算出面号、磁道号、扇区号,调用int 13h 中断例程进行实际读写

大佬帮我看看

** 这个程序,我的目的是将扇区的内容读到指定的data段中,但是最终结果ah = FF,al = 01 ,al跟预期结果一样,但是ah=FF 按照书上的说法应该是操作失败了,相当于没做出来。还请懂的朋友帮我看看错在哪里了**

源代码

assume cs:code
stack segment
	db 128 dup(0)
stack ends

data segment
	db 512 dup(0)
data ends

code segment
start:
	mov bx,stack
	mov ss,bx
	mov sp,128

	call init_reg										;初始化寄存器用以复制中断例程
	call cpy_interrupt									;复制中断例程
	call set_interrupt									;安装中断例程
	call test_data										;测试

	mov ax,4c00h
	int 21h

;================init_reg========================
init_reg:
	mov bx,cs
	mov ds,bx
	mov si,offset int7ch								;从int7ch处开始复制

	mov bx,0
	mov es,bx
	mov di,200h											;复制到0000:0200处

	mov cx,offset int7ch_end - offset int7ch			;需要复制的长度
	ret

;=====&#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值