Changeset 592 for trunk/src/bignum.c
- Timestamp:
- Oct 31, 2026, 7:16:07 PM (21 hours ago)
- File:
-
- 1 edited
-
trunk/src/bignum.c (modified) (33 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/bignum.c
r570 r592 649 649 650 650 bigerr_t 651 big_create(a) 652 bignum *a; 651 big_create(bignum * a) 653 652 { 654 653 /* Make sure that big_create alway returns a NULL bignum … … 681 680 682 681 void 683 big_destroy(a) 684 bignum *a; 682 big_destroy(bignum *a) 685 683 { 686 684 /* Mar 4, 2000 R. Wichmann: check for a == NULL */ … … 691 689 692 690 ulong 693 big_bitcount(a) 694 bignum *a; 691 big_bitcount(bignum *a) 695 692 { 696 693 int bits = 0; … … 711 708 712 709 bigerr_t 713 big_set_big(a, b) 714 bignum *a; 715 bignum *b; 710 big_set_big(bignum *a, bignum *b) 716 711 { 717 712 if ((big_errno != BIG_OK) || (a == b)) … … 731 726 732 727 void 733 big_set_ulong(n, a) 734 ulong n; 735 bignum *a; 728 big_set_ulong(ulong n, bignum *a) 736 729 { 737 730 unsigned int i; … … 766 759 767 760 void 768 big_set_long(n, a) 769 long n; 770 bignum *a; 761 big_set_long(long n, bignum *a) 771 762 { 772 763 ulong m; … … 782 773 783 774 bigerr_t 784 big_set_string(numstr, base, a) 785 char *numstr; 786 int base; 787 bignum *a; 775 big_set_string(char * numstr, int base, bignum *a) 788 776 { 789 777 char *src, *maxdigit, *chrptr; … … 870 858 871 859 int 872 big_ulong(a, n) 873 bignum *a; 874 ulong *n; 860 big_ulong(bignum *a, ulong *n) 875 861 { 876 862 ulong old_n; … … 900 886 901 887 int 902 big_long(a, n) 903 bignum *a; 904 long *n; 888 big_long(bignum *a, long *n) 905 889 { 906 890 long old_n; … … 931 915 932 916 char * 933 big_string(a, base) 934 bignum *a; 935 int base; 917 big_string(bignum *a, int base) 936 918 { 937 919 ulong bit_length, str_length; … … 993 975 994 976 bigerr_t 995 big_negate(a, b) 996 bignum *a; 997 bignum *b; 977 big_negate(bignum *a, bignum *b) 998 978 { 999 979 big_set_big(a, b); … … 1003 983 1004 984 int 1005 big_sign(a) 1006 bignum *a; 985 big_sign(bignum *a) 1007 986 { 1008 987 return a->sign; … … 1010 989 1011 990 bigerr_t 1012 big_abs(a, b) 1013 bignum *a; 1014 bignum *b; 991 big_abs(bignum *a, bignum *b) 1015 992 { 1016 993 big_set_big(a, b); … … 1023 1000 1024 1001 int 1025 big_compare(a, b) 1026 bignum *a; 1027 bignum *b; 1002 big_compare(bignum *a, bignum *b) 1028 1003 { 1029 1004 if (a->sign == b->sign) … … 1042 1017 1043 1018 int 1044 big_lessp(a, b) 1045 bignum *a; 1046 bignum *b; 1019 big_lessp(bignum *a, bignum *b) 1047 1020 { 1048 1021 return big_compare(a, b) < 0; … … 1050 1023 1051 1024 int 1052 big_leqp(a, b) 1053 bignum *a; 1054 bignum *b; 1025 big_leqp(bignum *a, bignum *b) 1055 1026 { 1056 1027 return !(big_compare(a, b) > 0); … … 1058 1029 1059 1030 int 1060 big_equalp(a, b) 1061 bignum *a; 1062 bignum *b; 1031 big_equalp(bignum *a, bignum *b) 1063 1032 { 1064 1033 return big_compare(a, b) == 0; … … 1066 1035 1067 1036 int 1068 big_geqp(a, b) 1069 bignum *a; 1070 bignum *b; 1037 big_geqp(bignum *a, bignum *b) 1071 1038 { 1072 1039 return !(big_compare(a, b) < 0); … … 1074 1041 1075 1042 int 1076 big_greaterp(a, b) 1077 bignum *a; 1078 bignum *b; 1043 big_greaterp(bignum *a, bignum *b) 1079 1044 { 1080 1045 return big_compare(a, b) > 0; … … 1082 1047 1083 1048 int 1084 big_zerop(a) 1085 bignum *a; 1049 big_zerop(bignum *a) 1086 1050 { 1087 1051 return a->sign == BIG_SIGN_0; … … 1089 1053 1090 1054 int 1091 big_evenp(a) 1092 bignum *a; 1055 big_evenp(bignum *a) 1093 1056 { 1094 1057 return ((*a->dp & 0x01) == 0); … … 1096 1059 1097 1060 int 1098 big_oddp(a) 1099 bignum *a; 1061 big_oddp(bignum *a) 1100 1062 { 1101 1063 return ((*a->dp & 0x01) == 1); … … 1103 1065 1104 1066 bigerr_t 1105 big_add(a, b, c) 1106 bignum *a; 1107 bignum *b; 1108 bignum *c; 1067 big_add(bignum *a, bignum *b, bignum *c) 1109 1068 { 1110 1069 int cmp; … … 1160 1119 1161 1120 bigerr_t 1162 big_sub(a, b, c) 1163 bignum *a; 1164 bignum *b; 1165 bignum *c; 1121 big_sub(bignum *a, bignum *b, bignum *c) 1166 1122 { 1167 1123 int cmp; … … 1225 1181 1226 1182 bigerr_t 1227 big_mul(a, b, c) 1228 bignum *a; 1229 bignum *b; 1230 bignum *c; 1183 big_mul(bignum *a, bignum *b, bignum *c) 1231 1184 { 1232 1185 DIGIT *dp_x, *dp_xstart, *dp_xend; … … 1350 1303 1351 1304 bigerr_t 1352 big_trunc(a, b, q, r) 1353 bignum *a; 1354 bignum *b; 1355 bignum *q; 1356 bignum *r; 1305 big_trunc(bignum *a, bignum *b, bignum *q, bignum *r) 1357 1306 { 1358 1307 DIGIT *v_end, *q_end, *r_end, *src, *dst; … … 1598 1547 1599 1548 bigerr_t 1600 big_floor(a, b, q, r) 1601 bignum *a; 1602 bignum *b; 1603 bignum *q; 1604 bignum *r; 1549 big_floor(bignum *a, bignum *b, bignum *q, bignum *r) 1605 1550 { 1606 1551 int b_eq_qr, sign_eq; … … 1633 1578 1634 1579 bigerr_t 1635 big_ceil(a, b, q, r) 1636 bignum *a; 1637 bignum *b; 1638 bignum *q; 1639 bignum *r; 1580 big_ceil(bignum *a, bignum *b, bignum *q, bignum *r) 1640 1581 { 1641 1582 int b_eq_qr, sign_diff; … … 1671 1612 */ 1672 1613 bigerr_t 1673 big_round(a, b, q, r) 1674 bignum *a; 1675 bignum *b; 1676 bignum *q; 1677 bignum *r; 1614 big_round(bignum *a, bignum *b, bignum *q, bignum *r) 1678 1615 { 1679 1616 int b_eq_qr, b_neg_p, a_sgn_neq_b_sgn; … … 1740 1677 1741 1678 bigerr_t 1742 big_random(a, b) 1743 bignum *a; 1744 bignum *b; 1679 big_random(bignum *a, bignum *b) 1745 1680 { 1746 1681 unsigned long i; … … 1791 1726 1792 1727 int 1793 big_expt(a, z, x) 1794 bignum *a; 1795 unsigned long z; 1796 bignum *x; 1728 big_expt(bignum *a, unsigned long z, bignum *x) 1797 1729 { 1798 1730 bignum b; … … 1821 1753 1822 1754 int 1823 big_exptmod(a_in, z_in, n, x) 1824 bignum *a_in; 1825 bignum *z_in; 1826 bignum *n; 1827 bignum *x; 1755 big_exptmod(bignum *a_in, bignum *z_in, bignum *n, bignum *x) 1828 1756 { 1829 1757 bignum a, z, b0, b1, b2, dummy; … … 1870 1798 1871 1799 int 1872 big_gcd(a, b, g) 1873 bignum *a; 1874 bignum *b; 1875 bignum *g; 1800 big_gcd(bignum *a, bignum *b, bignum *g) 1876 1801 { 1877 1802 bignum a1, b1, tmp;
Note:
See TracChangeset
for help on using the changeset viewer.