汇编网首页登录博客注册
tom7370的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新评论
最新留言
文章收藏

[2019-07-12 12:06] 李忠《x86汇编语言-从实模式到保护模式》第六章习题第二问

我现在在学习李忠的《x86汇编语言-从实模式到保护模式》
编译器是nasm
1.在某程序中声明和初始化了以下的有符号数。请问,正数和负数各有多少?
data1 db 0x05,0xff,0x80,0xf0,0x97,0x30
data2 dw 0x90,0xfff0,0xa0,0x1235,0x2f,0xc0,0xc5bc
2.如果可能的话,尝试编写一个主引导扇区程序来做上面的工作。



jmp near start
data1 db 0x05,0xff,0x80,0xf0,0x97,0x30
data2 dw 0x90,0xfff0,0xa0,0x1235,0x2f,0xc0,0xc5bc
start:
mov ax,0x7c0
mov ds,ax
mov si,data1
xor bx,bx           ;bh负,bl全
mov cx,data2-data1 
@a:mov al,[ds:si]
cmp al,0x80
jb @b
inc bh
@b:inc bl
inc si
loop @a
mov cx,(start-data2)/2
@c:mov ax,[ds:si]
cmp ah,0x80
jb @d
inc bh
@d:inc si
inc si
inc bl
loop @c
sub bl,bh
add bl,0x30
add bh,0x30
mov ax,0xb800
mov es,ax
mov byte [es:0],'z'
mov byte [es:1],0x07
mov byte [es:2],':'
mov byte [es:3],0x07
mov [es:4],bl
mov byte [es:5],0x07
mov byte [es:8],'f'
mov byte [es:9],0x07
mov byte [es:10],':'
mov byte [es:11],0x07
mov [es:12],bh
mov byte [es:13],0x07
jmp near $
times 510-($-$$) db 0
db 0x55,0xaa
评论次数(0)  |  浏览次数(541)  |  类型(汇编作业) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码