WebApp Sec mailing list archives

Re: modulo question


From: Michael Vergoz <descript () secureyourapache com>
Date: Tue, 19 Apr 2005 09:59:09 +0400

Hello,

--1 will decrement and is not negative.

descript-mac:~ descript$ cat > test.c
int main() {
        printf("%d", --1);
}
descript-mac:~ descript$ cc -o test test.c
test.c: In function `main':
test.c:2: error: invalid lvalue in decrement

and is invalid.

Using modulo with negative numbers ?!
0xFEBA3245-(0xFEBA3245%0x1000) = 4K aligned page.

descript-mac:~ descript$ cat > test.c
int main() {
        long plof = 0xFEBA3245;
        printf("Number : %lx(%ld)\n", plof, plof);
        printf("4Ko alignement: %lx\n", plof-(plof%0x1000));
}
descript-mac:~ descript$ cc -o test test.c
descript-mac:~ descript$ ./test
Number : feba3245(-21351867)
4Ko alignement: feba4000

sya

On 15 avr. 05, at 12:47, martin wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello list,

I have slightly academic question about modulo. I sent this message here because I thing there are many of gurus which working with modulo operator.

I have tried in python and in C++ following:
            python    C++
1%2      1           1
- -1%2     1          -1
1%-2    -1           1
- -1%-2   -1          -1

What is right?
Do you know some applications which using modulo with negative numbers?
Have you some references to definition (mathematical def. and properties) of
modulo?

Thanks in advance,
Martin
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQFCX4Bc9w5olJf0Oq8RAsvSAKCnvAdrdXBL/aqiSTCANjT2BKb7NACcCCel
7b+pYp0k/1hMQPOyAY2M5/4=
=zLC1
-----END PGP SIGNATURE-----



Current thread: