void bird(int a,int b)
{
int c=a+b;
}
void main()
{
bird(1,2);
}
;原C程序
;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
6: void main()
7: { ;EBP = 0012FFC0,ESP = 0012FF84
00401060 push ebp ;EBP = 0012FFC0,ESP = 0012FF80
004...
- [fancx] ========== 其它位不确定就先不管,那么这个数就是???? 00?? 01?? ?1?1, 10/31 09:44
- [游客] 博主的程序很有意思,学习了。 07/13 18:46
- [martian] 博主的主程序执行效果是在屏幕上延时显示26个字母,而非P289的实验16的要求,虽然实现了相应的子程 04/14 15:32
- [hihi] 不错,我第15章刚结束,复习一下! 04/14 15:32
- [jhszcn] 嘎嘎 04/14 14:25
- [wdm] 答案4,中断服务分内中断和外中断,在程序中用定址表有时不用段间跳转,可能没有保存段地址,不一定可以用 04/14 11:51
- [younggay] 对博主的分析没有异议。 04/14 11:40
- [younggay] 理解的不错啊。 我觉得挺正确。 04/14 10:48
- [jhszcn] 谢谢指正 04/13 22:05
- [jhszcn] To younggay: pushf call dword ptr后 04/10 17:54
- [w0922] 你好 !能不能到我的博客看哈 有个问题想请教哈你··· 就是我博客实验十分析的那个问题 04/18 15:19
- [jhszcn] 嘎嘎,谢谢大哥:) 03/27 19:38
- [wdm] 博主终于开通了。呵呵,这里的功能让你更好的穿梭与汇编网的各个版块,还能及时了解很多动态信息和自己论坛 03/26 09:54
[2008-04-21 12:12] 第一天反汇编学习笔记
阅读全文 |
评论次数(0) |
浏览次数(755) |
所属类型(学习)
[2008-04-14 10:19] INT9子程序分析
;INT 9子程序
;=====================================
the9:
push ax
push es
mov ax,0b800h
mov es,ax
pushf ;标志寄存器压栈
pushf
pop ax
and ah,11111100b...
;=====================================
the9:
push ax
push es
mov ax,0b800h
mov es,ax
pushf ;标志寄存器压栈
pushf
pop ax
and ah,11111100b...
阅读全文 |
评论次数(3) |
浏览次数(1347) |
所属类型(分享)
[2008-04-14 09:49] 16章检测题及分析
第一题:
将标号a处的8个数累加的和放到标号b处所在的单元中,下面选项中的程序正确的是______。
1、 assume cs:code
code segment
mov si,0
mov cx,8
s: add b,a[si]
inc si
loop s
mov ax,4c00h
int 21h
a db 1,2,3,4,5,6,7,8
b db 0
code ends
end
2、 assume cs:code,ds:data
...
将标号a处的8个数累加的和放到标号b处所在的单元中,下面选项中的程序正确的是______。
1、 assume cs:code
code segment
mov si,0
mov cx,8
s: add b,a[si]
inc si
loop s
mov ax,4c00h
int 21h
a db 1,2,3,4,5,6,7,8
b db 0
code ends
end
2、 assume cs:code,ds:data
...
阅读全文 |
评论次数(2) |
浏览次数(941) |
所属类型(汇编作业)
[2008-04-13 22:02] 实验16
;按键1清屏。
;按键2设置前景色。
;按键3设置背景色。
;按键4向上滚动一行。
;(1)清屏:将显存中当前屏幕中的字符设为空格符;
;(2)设置前景色:设置显存中当前屏幕中处于奇地址的属性字节的第0、1、2位;
;(3)设置背景色:设置显存中当前屏幕中处于击地址的属性字节的第4、5、6位;
;(4)向上滚动一行:依次将第n+1行的内容复制到第n行处;最后一行为空。
assume cs:code,ds:data
data segment
dw 8 dup(0)
code segment
start:
mov ax,data
mov ds...
;按键2设置前景色。
;按键3设置背景色。
;按键4向上滚动一行。
;(1)清屏:将显存中当前屏幕中的字符设为空格符;
;(2)设置前景色:设置显存中当前屏幕中处于奇地址的属性字节的第0、1、2位;
;(3)设置背景色:设置显存中当前屏幕中处于击地址的属性字节的第4、5、6位;
;(4)向上滚动一行:依次将第n+1行的内容复制到第n行处;最后一行为空。
assume cs:code,ds:data
data segment
dw 8 dup(0)
code segment
start:
mov ax,data
mov ds...
阅读全文 |
评论次数(2) |
浏览次数(975) |
所属类型(汇编作业)
[2008-04-10 13:21] 15章检测题及分析(理解错的地方请指正)
第一题:
下面的说法正确的是______。
1、 外设的输入随时都能获得CPU的处理。
2、 计算机外设的输入不直接送入CPU,而是直接送入内存。
3、 标志寄存器IF位决定着中断信息能否被CPU处理。
4、 以上说法都有错误。
================================================================
这题选4
答案1,外设的输入输出如果是可屏蔽中断,那么if=0的时候CPU不响应
答案2,外设的输入送入对应的端口,而不是内存
答案3,只有可屏蔽中断才可以用if决定是否被CPU响应
第二题:
以...
下面的说法正确的是______。
1、 外设的输入随时都能获得CPU的处理。
2、 计算机外设的输入不直接送入CPU,而是直接送入内存。
3、 标志寄存器IF位决定着中断信息能否被CPU处理。
4、 以上说法都有错误。
================================================================
这题选4
答案1,外设的输入输出如果是可屏蔽中断,那么if=0的时候CPU不响应
答案2,外设的输入送入对应的端口,而不是内存
答案3,只有可屏蔽中断才可以用if决定是否被CPU响应
第二题:
以...
阅读全文 |
评论次数(2) |
浏览次数(938) |
所属类型(汇编作业)
[2008-04-10 12:33] 实验15
assume cs:code
code segment
start:
push cs
pop ds ;设ds
mov si,offset the9 ;设si
mov ax,0
mov es,ax ;设es
mov di,204h ;设di
push es:[9h*4]
pop es:[200h] ;保存int9h中ip
push es:[9h*4+2]
pop es:[200h+2] ;保存int9h中cs
mov cx,offset the9End - offse...
code segment
start:
push cs
pop ds ;设ds
mov si,offset the9 ;设si
mov ax,0
mov es,ax ;设es
mov di,204h ;设di
push es:[9h*4]
pop es:[200h] ;保存int9h中ip
push es:[9h*4+2]
pop es:[200h+2] ;保存int9h中cs
mov cx,offset the9End - offse...
阅读全文 |
评论次数(1) |
浏览次数(741) |
所属类型(汇编作业)
[2008-04-09 17:07] ESC改变A~Z显示颜色,F1改变屏幕颜色
assume cs:codesg,ds:datasg
datasg segment
dw 0,0,0
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax ;设ds
mov ax,0
mov es,ax ;设es
push es:[9*4]
pop ds:[0] ;原9h中断ip
push es:[9*4+2]
pop ds:[2] ;原9h中断es
;======================================...
datasg segment
dw 0,0,0
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax ;设ds
mov ax,0
mov es,ax ;设es
push es:[9*4]
pop ds:[0] ;原9h中断ip
push es:[9*4+2]
pop ds:[2] ;原9h中断es
;======================================...
阅读全文 |
评论次数(1) |
浏览次数(723) |
所属类型(汇编作业)
[2008-04-09 15:16] 变色显示A~Z
assume cs:codesg,ds:datasg
datasg segment
dw 0,0
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax ;设ds
mov ax,0
mov es,ax ;设es
push es:[9*4]
pop ds:[0] ;原9h中断ip
push es:[9*4+2]
pop ds:[2] ;原9h中断es
;========================================...
datasg segment
dw 0,0
datasg ends
codesg segment
start:
mov ax,datasg
mov ds,ax ;设ds
mov ax,0
mov es,ax ;设es
push es:[9*4]
pop ds:[0] ;原9h中断ip
push es:[9*4+2]
pop ds:[2] ;原9h中断es
;========================================...
阅读全文 |
评论次数(5) |
浏览次数(1082) |
所属类型(汇编作业)
[2008-04-07 18:40] 14章检测题及分析(理解错的地方请指正)
第一题:
下列各代码序列,要从端口号为6FFh的端口读取一个字节的数据,正确的是______。
1、 mov bx,6FFH
out al,bx
2、 in al,6FFH
3、 mov dx,6FFH
in al,dx
4、 mov dx,6FFH
out al,dx
========================================================
这题我选3
6ffh大于255,要用dx中转
mov dx,6ffh
读 in
读到al
in al,dx
第二题:
以下关于移位错误的...
下列各代码序列,要从端口号为6FFh的端口读取一个字节的数据,正确的是______。
1、 mov bx,6FFH
out al,bx
2、 in al,6FFH
3、 mov dx,6FFH
in al,dx
4、 mov dx,6FFH
out al,dx
========================================================
这题我选3
6ffh大于255,要用dx中转
mov dx,6ffh
读 in
读到al
in al,dx
第二题:
以下关于移位错误的...
阅读全文 |
评论次数(3) |
浏览次数(749) |
所属类型(汇编作业)
[2008-04-07 18:10] 第十四章习题,有个不理解的地方,请大家有时间帮我看看
;安装7ch中断,显示一个BCD字节
;ds:si指向要读的字节地址,es:di指向要显示到的位置
;si+2,di+4(主程序中设置)
assume cs:code
code segment
start:
mov ax,cs
mov ds,ax ;设ds
mov si,offset do7c ;设si
mov cx,offset do7cEnd-offset do7c ;设cx
mov ax,0
mov es,ax ;设es
mov di,200h ;设di
cld ;设...
;ds:si指向要读的字节地址,es:di指向要显示到的位置
;si+2,di+4(主程序中设置)
assume cs:code
code segment
start:
mov ax,cs
mov ds,ax ;设ds
mov si,offset do7c ;设si
mov cx,offset do7cEnd-offset do7c ;设cx
mov ax,0
mov es,ax ;设es
mov di,200h ;设di
cld ;设...
阅读全文 |
评论次数(2) |
浏览次数(708) |
所属类型(汇编作业)
『 查看更多文章 』