亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? arm.txt

?? miracl-大數(shù)運(yùn)算庫(kù),大家使用有什么問(wèn)題請(qǐng)多多提意見(jiàn)
?? TXT
字號(hào):
If developing for the ARM, or indeed any other new processor, you should 
first build a C-only library.

For the ARM, this mirdef.h header would be appropriate for an integer-
only build of the library.

--------------------------------------

/*
 *   MIRACL compiler/hardware definitions - mirdef.h
 *   Copyright (c) 1988-2001 Shamus Software Ltd.
 */


#define MIRACL 32
#define MR_LITTLE_ENDIAN      

/* or possibly 
#define MR_BIG_ENDIAN      
*/

#define mr_utype int
#define MR_IBITS 32
#define MR_LBITS 32
#define mr_dltype long long
#define mr_unsign32 unsigned int
#define mr_unsign64 unsigned long long
#define MAXBASE ((mr_small)1<<(MIRACL-1))


#define MR_NOASM

---------------------------------------------

Assuming that the mirdef.h, miracl.h and mr*.c files are all in the same
directory, then a suitable batch file for building a MIRACL library might 
look like this:-

-------------------------------

armcc -I. -c -O2 mrcore.c
armcc -I. -c -O2 mrarth0.c
armcc -I. -c -O2 mrarth1.c
armcc -I. -c -O2 mrarth2.c
armcc -I. -c -O2 mralloc.c
armcc -I. -c -O2 mrsmall.c
armcc -I. -c -O2 mrio1.c
armcc -I. -c -O2 mrio2.c
armcc -I. -c -O2 mrgcd.c
armcc -I. -c -O2 mrjack.c
armcc -I. -c -O2 mrxgcd.c
armcc -I. -c -O2 mrarth3.c
armcc -I. -c -O2 mrrand.c
armcc -I. -c -O2 mrprime.c
armcc -I. -c -O2 mrcrt.c
armcc -I. -c -O2 mrscrt.c
armcc -I. -c -O2 mrmonty.c
armcc -I. -c -O2 mrpower.c
armcc -I. -c -O2 mrsroot.c
armcc -I. -c -O2 mrcurve.c
armcc -I. -c -O2 mrfast.c
armcc -I. -c -O2 mrshs.c
armcc -I. -c -O2 mrshs256.c
armcc -I. -c -O2 mrshs512.c
armcc -I. -c -O2 mraes.c
armcc -I. -c -O2 mrlucas.c
armcc -I. -c -O2 mrstrong.c
armcc -I. -c -O2 mrbrick.c
armcc -I. -c -O2 mrebrick.c
armcc -I. -c -O2 mrecgf2m.c
armar rc miracl.a mrcore.o mrarth0.o mrarth1.o mrarth2.o mralloc.o mrsmall.o
armar r  miracl.a mrio1.o mrio2.o mrjack.o mrgcd.o mrxgcd.o mrarth3.o
armar r  miracl.a mrrand.o mrprime.o mrcrt.o mrscrt.o mrmonty.o mrcurve.o 
armar r  miracl.a mrfast.o mrshs.o mraes.o mrlucas.o mrstrong.o mrbrick.o 
armar r  miracl.a mrebrick.o mrecgf2m.o mrpower.o mrsroot.o
armar r  miracl.a mrshs256.o mrshs512.o 
del mr*.o
armcc -I. -c pk-demo.c
armlink pk-demo.o miracl.a -o pk-demo.axf

--------------------------------------------

This may be fast enough for you. If its not you can use the assembly language
macros provided in arm.mcs or gccarm.mcs for greater speed. See kcmcomba.txt.

For faster RSA and DH implementations replace the MR_NOASM definition with
MR_KCM n (where n is usually 4, 8 or 16 - experiment. n*MIRACL must divide the 
modulus size in bits exactly, which it will for standard moduli of 1024 bit 
for example). Compile and run the utility mex.c

c:\miracl>mex n arm mrkcm

(Yes its the same n). Rebuild the MIRACL library, but this time include the 
modules mrkcm.c and mrmuldv.c (you can find the latter in mrmuldv.ccc This
standard C version will do.)

For fast GF(p) elliptic curves, replace MR_NOASM with MR_COMBA n. This time 
32*n is exactly the size of p in bits (assuming 32-bit processor).

This approach is also optimal for 1024-bit RSA decryption using the Chinese 
Remainder Theorem. Set n=16 (512=16*32)

c:\miracl>mex n arm mrcomba

Rebuild the MIRACL library, but this time include the modules mrcomba.c and 
mrmuldv.c.

Still not fast enough? If the prime p is of a "special" form for an Elliptic 
curve, define in mirdef.h MR_SPECIAL. Edit mrcomba.tpl to insert "special" code
for modular reduction - its quite easy and you will find examples there 
already. Run mex as before, and rebuild MIRACL again.

For processors other than the ARM, the basic procedure is the same. A C-only 
build is always possible. To go faster you will need to create a .mcs file 
for your processor, and then you can proceed as above.

An alternative is to do a C-only build and then go in and optimise the 
generated assembly language. The time-critical routines are usually 
multiply() and redc() which can be found in mrarth2.c and mrmonty.c

This will probably not be as fast as the highly optimised approach outlined
above.


NOTE: There is a nasty ARM compiler bug in the version I am using. It can 
cause problems, if for example using the C-only macros from c.mcs or c1.mcs

Use this program to illustrate the bug, or to see if your Compiler is 
affected.

/* Short program to illustrate ARM compiler bug
   works fine with -O0, gets wrong answer for -O1 and -O2 optimization 
   Answer should be 0xffffffff00000001 but it gets 0x1 
*/  

#include <stdio.h>

int main()
{
    unsigned long long x;
    unsigned long a,b;
    a=0;
    b=0xFFFFFFFF;
    x=(unsigned long long)a-b;
    printf("x= %llx\n",x);    
    return 0;
}


Another problem may arise with systems that do not fully support unsigned long 
long arithmetic (you may be getting linker errors with names like __udivdi3 
functions not found). In this case for a C only build delete the #define 
MR_NOASM from mirdef.h and use the blakely-sloan versions of mrmuldiv and 
mrmuldvm with the standard versions of mrmuldvd and mrmuldvd2 (from 
mrmuldv.ccc) to create a file mrmuldv.c which should then be included in the 
library. Also insert an #undef mr_dltype at the start of mrxgcd.c



?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美三级电影在线观看| 欧美日本免费一区二区三区| eeuss鲁一区二区三区| 夜夜嗨av一区二区三区四季av| 欧美成人精品福利| 色88888久久久久久影院按摩| 国内成人精品2018免费看| 亚洲午夜久久久久久久久电影院| 国产婷婷色一区二区三区| 这里只有精品视频在线观看| 99riav久久精品riav| 国产精一品亚洲二区在线视频| 亚洲精品菠萝久久久久久久| 国产女人18水真多18精品一级做| 欧美一区二区二区| 欧美写真视频网站| 91麻豆福利精品推荐| 丁香亚洲综合激情啪啪综合| 精品写真视频在线观看| 偷拍亚洲欧洲综合| 亚洲成人av一区二区三区| 亚洲视频一区二区在线观看| 欧美国产在线观看| 久久午夜色播影院免费高清| 日韩久久精品一区| 首页综合国产亚洲丝袜| 亚洲精品视频自拍| 中文字幕亚洲一区二区va在线| 欧美成人综合网站| 日韩欧美一区二区视频| 欧美一级免费大片| 91精品国产综合久久福利软件| 欧美日韩视频在线第一区 | 亚洲人一二三区| 欧美国产成人在线| 欧美国产欧美综合| 国产精品美女一区二区在线观看| 久久久国产精品午夜一区ai换脸| 精品日韩在线一区| 2014亚洲片线观看视频免费| 日韩你懂的在线播放| 日韩欧美国产一区在线观看| 日韩无一区二区| 欧美va在线播放| 久久嫩草精品久久久久| 国产女同互慰高潮91漫画| 国产精品护士白丝一区av| 中文字幕乱码久久午夜不卡| 中文字幕中文字幕在线一区| 日韩理论片在线| 亚洲一区二区av电影| 亚洲国产成人av| 日韩激情一区二区| 欧美三级电影网| 欧美精选在线播放| 日韩欧美国产1| 久久久午夜精品| 亚洲欧洲韩国日本视频| 日韩一区中文字幕| 亚洲午夜激情网页| 久久精品国产一区二区| 国产一区二区成人久久免费影院| 国产精品99久久久久久宅男| www.欧美亚洲| 欧美日韩精品福利| 久久蜜桃av一区精品变态类天堂| 国产精品免费久久| 性久久久久久久久久久久| 久久国产福利国产秒拍| 成人免费视频一区| 欧美日韩一区二区三区四区五区 | 亚洲精品一区二区三区精华液| 久久久精品2019中文字幕之3| 亚洲欧洲精品一区二区三区 | 日韩福利电影在线| 国产电影精品久久禁18| 日本韩国精品一区二区在线观看| 欧美电影一区二区| 久久午夜电影网| 一区二区三区四区亚洲| 久久成人免费网| 97se亚洲国产综合在线| 日韩小视频在线观看专区| 国产日产欧美一区二区三区| 亚洲国产精品久久人人爱| 国产一区二区视频在线播放| 91福利精品第一导航| 久久一日本道色综合| 亚洲精品乱码久久久久久黑人| 精品一区二区综合| 91国产精品成人| 国产日产欧产精品推荐色| 亚洲高清免费观看高清完整版在线观看| 激情深爱一区二区| 欧美性三三影院| 欧美韩国日本一区| 美女网站在线免费欧美精品| 色综合久久久久综合| 26uuu欧美日本| 日韩精品免费专区| 一本到三区不卡视频| 久久综合九色综合97婷婷女人 | 狠狠v欧美v日韩v亚洲ⅴ| 欧美主播一区二区三区| 欧美高清在线一区| 久久超碰97人人做人人爱| 欧美午夜一区二区| 国产精品久久久久一区二区三区| 强制捆绑调教一区二区| 欧美亚洲一区二区在线| 亚洲日本va在线观看| 国产老女人精品毛片久久| 欧美一区二区三区视频免费| 亚洲一区二区三区四区五区黄 | 欧美狂野另类xxxxoooo| 综合在线观看色| 高清国产一区二区| 精品国产91久久久久久久妲己| 日韩激情av在线| 欧美日韩精品二区第二页| 亚洲免费观看视频| 99久久伊人网影院| 国产精品久久久久久久久搜平片| 国产一区二区三区在线观看免费| 日韩视频免费观看高清完整版| 亚洲大片免费看| 欧美美女一区二区在线观看| 一区二区三区在线免费| 色婷婷精品久久二区二区蜜臀av| 国产精品免费丝袜| 成人白浆超碰人人人人| 国产精品色噜噜| 不卡电影免费在线播放一区| 国产亚洲女人久久久久毛片| 国产精品亚洲综合一区在线观看| 26uuu久久天堂性欧美| 国产一区二区三区电影在线观看| 26uuu精品一区二区三区四区在线| 韩国在线一区二区| 国产色综合一区| 不卡的电影网站| 亚洲精品国久久99热| 色狠狠一区二区三区香蕉| 亚洲精选免费视频| 欧美亚男人的天堂| 天天综合网天天综合色| 欧美一区二区网站| 久久爱www久久做| 国产日韩欧美一区二区三区综合| 福利一区在线观看| 亚洲欧美日韩在线不卡| 欧美视频三区在线播放| 婷婷国产在线综合| 精品成人a区在线观看| 国产suv精品一区二区883| 亚洲欧洲三级电影| 欧美性三三影院| 久久国产精品免费| 国产精品卡一卡二| 欧美无砖砖区免费| 麻豆高清免费国产一区| 中文字幕巨乱亚洲| 欧美三级日韩在线| 日韩女优视频免费观看| 国产精品99久| 亚洲女同女同女同女同女同69| 欧美久久一区二区| 国产一区二区三区最好精华液| 最新热久久免费视频| 欧美日本在线播放| 国产一区二区免费看| 亚洲情趣在线观看| 日韩三级在线观看| 不卡的电视剧免费网站有什么| 亚洲成a人片在线不卡一二三区 | 欧美一区二区三区视频| 国产福利精品导航| 亚洲成人av中文| 国产女主播一区| 欧美精品日韩综合在线| 国产成人精品免费一区二区| 一区二区三区在线免费视频 | 久久久99精品免费观看不卡| 一本久久a久久精品亚洲| 久久精品国产99国产精品| 自拍偷拍欧美激情| 欧美电影免费观看高清完整版在| 99久久777色| 国产在线不卡一区| 亚洲国产va精品久久久不卡综合| 国产午夜亚洲精品不卡| 欧美电影影音先锋| 91在线你懂得| 国产麻豆精品视频| 日韩激情在线观看| 亚洲最新视频在线观看| 国产精品污污网站在线观看| 日韩一级黄色片| 欧美日韩在线播放三区| av在线不卡免费看|