// second.
/*////////////////////////////////////
/ unsigned i; //改为signed i /
/ for(i = 9 ; i >= 0 ; i--){ /
/ printf("%u\n",i); /
/ } /
///////////////////////////////////*/
//diffrent between jb&jl
这个程序就能看出明显的区别,jb,与jl
而之前的那篇中就看不出区别了 - -!...
- [mess] 正确。 05/11 15:10
- [mywiil] 其实就是相当于修改ip。汇编中的call指令+局部变量和参数都是用栈来存放这些知识要有就好理解了。 04/25 21:17
- [mywiil] 此等问题的研究非反汇编不行。 04/25 21:12
- [mouse] (3)2^12,1024; --- 第一个空是1024*8=2^10*8=2^13 第四 04/24 23:00
- [jisuanji] 13题是不是 add al,al啊? 如果是答案好像是 0D810H 吧 04/20 22:04
[2010-04-21 15:07] signed 与 signed 之2
阅读全文 |
评论次数(0) |
浏览次数(274) |
所属类型(默认类型)
[2010-04-21 14:41] signed 与 unsigned
代码如下:
void main(){
int i = -20;
unsigned int j = 10;
cout<<i+j<<endl;
}
程序输出的结果是10进制的,FF FF FF F6H。程序执行到i + j,并
mov eax,i+j; //具体什么忘记了用i + j代替下
的时候,eax结果是FF FF FF F6与把unsigned去掉的结果是一样的。push eax,之后就call去了。那么如果堆栈里面的数据是一样的,cout如何去判定是signed 还是unsigned。是不是编译的时...
void main(){
int i = -20;
unsigned int j = 10;
cout<<i+j<<endl;
}
程序输出的结果是10进制的,FF FF FF F6H。程序执行到i + j,并
mov eax,i+j; //具体什么忘记了用i + j代替下
的时候,eax结果是FF FF FF F6与把unsigned去掉的结果是一样的。push eax,之后就call去了。那么如果堆栈里面的数据是一样的,cout如何去判定是signed 还是unsigned。是不是编译的时...
阅读全文 |
评论次数(0) |
浏览次数(240) |
所属类型(默认类型)
[2010-04-21 14:32] 关于一个小问题的思考
原题:
void f(){
};
void main(){
int x = 1;
f();
x = 0;
cout<<x<<endl;
}
在f()里面添加代码,使程序输出1。
解:
f(){
char buffer[4];
int* ret;
ret = ((int*) buffer) + 2;
(*ret) += 7;
}
//思考如下:
buffer转为int指针后+2就是+sizeof(int),那么就是加了8个字节,而buffer后面是ebp,ret。所以...
void f(){
};
void main(){
int x = 1;
f();
x = 0;
cout<<x<<endl;
}
在f()里面添加代码,使程序输出1。
解:
f(){
char buffer[4];
int* ret;
ret = ((int*) buffer) + 2;
(*ret) += 7;
}
//思考如下:
buffer转为int指针后+2就是+sizeof(int),那么就是加了8个字节,而buffer后面是ebp,ret。所以...
阅读全文 |
评论次数(2) |
浏览次数(289) |
所属类型(默认类型)
[2010-04-20 16:18] 检测点2.2
(1) 00010~1000F
(2) 1001H,2000H...
(2) 1001H,2000H...
阅读全文 |
评论次数(1) |
浏览次数(261) |
所属类型(汇编作业)
[2010-04-20 16:10] 检测点2.1
(1) AX = F4A3H;
(2) AX = 31A3H;
(3) AX = 3123H;
(4) AX = 6246H;
(5) BX = 826CH;
(6) CX = 6246H;
(7) AX = 826CH;
(8) AX = 04D8H;
(9) AX = 0482H;
(10) AX = 6C82H;
(11) AX = D882H;
(12) AX = D888H;
(13) AX = D890H; //AX = D810H.多谢。
(14) AX = 3AD6H;...
(2) AX = 31A3H;
(3) AX = 3123H;
(4) AX = 6246H;
(5) BX = 826CH;
(6) CX = 6246H;
(7) AX = 826CH;
(8) AX = 04D8H;
(9) AX = 0482H;
(10) AX = 6C82H;
(11) AX = D882H;
(12) AX = D888H;
(13) AX = D890H; //AX = D810H.多谢。
(14) AX = 3AD6H;...
阅读全文 |
评论次数(1) |
浏览次数(292) |
所属类型(汇编作业)
[2010-04-20 15:56] 检测点1.1
(1)13;
(2)1024,0,1023;
(3)2^12,1024;
(4)2^1000,2^100,2^10;
(5)2^16,2^20,2^24,2^32;
(6)1,1,2,2,4;
(7)512,256;
(8)二进制信息;...
(2)1024,0,1023;
(3)2^12,1024;
(4)2^1000,2^100,2^10;
(5)2^16,2^20,2^24,2^32;
(6)1,1,2,2,4;
(7)512,256;
(8)二进制信息;...
阅读全文 |
评论次数(1) |
浏览次数(222) |
所属类型(汇编作业)
页码数(1):
1