INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
Les positions respectives des aretes A et C ou D et du point B sont ainsi telles que le soutien de la membrane est assuré efficacement et sans contraintes excessives pour celle-ci lors du passage des moyens de soutien vers le canal de distribution.
Les bossages peuvent avoir des formes diverses, de préférence la face d'appui (27) se termine au droit du canal de distribution par une arete (A) sensiblement rectiligne.
La largeur maximum des bossages comptée parallèlement au canal de distribution est inférieure au pas des nervures et de préférence inférieure à 0,8 fois le pas desdites nervures, tout en conservant à l'arete (A) une longueur d'au moins 0,1 mm et de préférence d'au moins 0,2 mm.
ta longueur des bossages comptée perpendiculairement au canal de distribution est au plus egale à la largeur de la zone de transition et au moins égale à 0,1 mm et de préférence à 0,5 mm.
De préférence le fond (26) des passages (25) s'incline vers le canal (17) et le passage (25) est ainsi creusé dans l'amie (11) de l'intercalaire pour ménager une section suffisante pour ltécoulement de fluide vers les interstices élémentaires tels que (19).
Sur une face et sur l'autre de l'intercalaire selon l'invention, les nervures peuvent etre symétriques par rapport à lteme de l'intercalaire ou être éventuellement décalées, de ce fait les bossages-peuvent etre symétriques par rapport à l'amie de l'intercalaire ou etre éventuellement décalés.
Le profil des nervures peut etre de tout type connu ; par exemple les nervures peuvent avoir un profil semi-elliptique ou en forme de parabololde ou de secteur circulaire ; elles seront avantageusement de profil sensiblement triangulaire à sommet arrondi. Les nervures peuvent aussi éventuellement être lamellaires, ou présenter des épaulements ou etre telles que les aretes de deux nervures voisines soient raccordées par des surfaces courbes concaves.
Les nervures d'une face d'un intercalaire peuvent aussi éventuellement etre telles qu'elles viennent en butez contre l'amie de l'intercalaire adåacent par l'intermédiaire de la membrane.
L'intercalaire peut présenter sur sa surface des reliefs sous forme de saillies de tout type connu. Un tel intercalaire est représenté figure 5.
P4096: 4096.
D1000: 1000 BUFAD: 502 ;DMA STORES REFERENCE HERE MAX: 5000 6 NOXRAY: JSR@ .CPYL LDA 3,COMMON LDA 1,DRIVE.3 LDA 0,ONOFF AND 0,1 STA 1,DRIVE.3 DOA 1,MTR JSR@ .FRET 1 XRAY: JSR@ .CPYL LDA 0,-167,3 STA 0,ADDRESS LDA 3,COMMON LDA 1,DRIVE,3 LDA 0,ONOFF AND 0,1 ADC 0,1 STA 1,DRIVE,3 LDA 0,MAX STA 0,MAXNOTUP NIOC A2D NIOP A2D LDA 3,M1000 LOOP: LDA 0,D1000 NIOS A2D DOA 1,MTR INC 0,0,SZR JMP .-2 LDA@ 2,BUFAD LDA 0,P4096 SUBZ# 0,2,SNR JMP LOOP LDA 0,M1000 ADDZ# 2,0,SHC JMP NOTUP INC 3,3.SZR JMP LOOP ANC 0,0 EXRAY: STA@ 0,ADDRESS JSR@ .FRET NOTUP: DSZ MAXNOTUP JMP LOOP SUBZ 0,0 LDA 3,COMMON STA 0,DRIVE.3 JMP EXRAY .END Annexe A partie IX @@@@@@@@ TR@@SLATIONAL SCAH RSMW @@@@@@@@ 1 10/13/75 CALL SCAN = ICOUNT(3), IBUF. IDIR(3) ) IDIR(1) = 1 FOR NEGATIVE 0 FOR POSITIVE IDIR(2) = STARTING COUNT FROM LINEAR ENCODER IDIR(3) = ENDING COUNT FROM LINEAR ENCODER ICOUNT(1) = COUNT OF SAMPLES TO BE RETURMED ICOUNT(2) = COUNT OF DETECTOR VALUES TO BE SUMMED PER SAMPLE ICOUNT(3) = 10 MICRONS LINEAR ENCODER COUNTS PER DETECTOR NIOS .TITLE SCAN .ENT SCAN .EXTD .CPYL,.FRET,MPY,COMMUN .NREL DRIVE=3 ;POSITION IN COMMUN OF DRIVE WORD IBUFAD=28 ;ADDRESS OF BUFFER FOR DATA.REFERENCE IDATA=22 ;ADDRESS OF BUFFER FOR INPUT UNIT=15 ;NUMBER OF WORDS PER NIOS MTR=64 ;DEVICE CODE OF MOTOR CONTROLLER AZD=30 ;DEVICE CODE OF AMALOG TO DIGITAL DMA BOARD RSL=75 ;DEVICE CODE OF RESOLVERS ; ; SUBROUTINE ONEPT ;MOVE ONE SET OF 13 DETECTOR VALUES + TIME BACK TO CALLING PROGRAM ONEPT: STA 3,AC3 UPDOWN: ISZ IBUFAD LDA 3,IBUFAD LDA 2,IDATA LDA 2,16,2 STA 2,0,3 LDA 2,KCOUNT LDA 0,COUNT MOVIT: LDA@ 1,IDATA ADD 2,3 STA 1,0,3 INC 0,0,SZR JMP MOVIT NIOS AZD LDA 0,BUFAD STA ,IDATA ADDPT: ISZ DONE JMP .+2 JMP ADDEND ADC 1,1 STA 1,DONE LDA 0,COUNT STA 0,LPCNT DOWNUP: DSZ IBUFAD LDA 3,IBUFAD ADDLP: ADD 2,3 LDA 0,0,3 ADDER:LDA 1,1,3 ADD 1,0 STA 0,0,3 ISZ LPCNT JMP ADDLP DSZ ICOUNT JMP .+2 JMP EXIT LDA 0,ENDPOS LDA 1.OLD ADDOR 0,0 ADDOR 1,1 LDA 2,IDIR MOV# 2,2,SZR JMP NEGT SUBZ# 0,1,SZC JMP EXIT JMP ADDEND NEGT: SUBZ# 1,0,SZC JMP EXIT ADDEND: LDA 3,AC3 LDA 0,OLD LDA 1,INCREN JMP 1,3 AC3: 0 ;TEMP SAVE FOR AC3 LPCNT: 0 ICOUNT: 6 KCOUNT: 6 COUNT: 0 BUFAD: 501 DONE: 0 IDIR: 0 STRPOS: 0 ENDPOS: 0 ; 3 SCAN: JSR@ .CPYL LDA 2,-167,3 LDA 0,0,2 STA 0,ICOUNT ;COUNT OF SUMMED SAMPLES TO BE RETURNED STA 0,KCOUNT LDA 1,1,2 NEG 1,1 ;WE NEED NEGATIVE LOOP COUNT STR 1,COUNT ;COUNT OF SAMPLES TO BE SUMMED LDA 1,2,2 STA 1,INCREM ;10 MICROM COUNTS PER SAMPLE LDA 1,-166,3 STA 1,MBUFAD LDA 2,SKPER STA 2,SKP1 STA 2,SKP2 ADC 2,2 STA 2,DONE LDA 3,-165,3 LDA 0,0,3 STA 0,IDIR ;DIRECTION OF SCAN MOV 0,0,SNR JMP POSINIT LDA 2,ICOUNT POSINIT:: ADD 2,1 STA 1,IBUFAD LDA 1,1,3 ;STARTING POSITION AS INTEGER STA 1,STRPOS LDA 1,2,3 ;ENDING POSITION AS INTEGER STA 1,ENDPOS LDA 3,SCANAD ADD 0,3 LDA 1,0,3 STA 1,DEV LDA 3,COMMON LDA 2,DRIVE.3 COM 1,1 AMD 1,2 ADC 1,2 STA 2,DRIVE,3 LDA 3,UPARR ADD 0,3 LDA 0,0,3 STA 0,UPDOWN LDA 0,1,3 STA 0,DOWNUP LDA 0,3,3 STA 0,ADDER DOR 2,MTR ;START DRIVE LDA 0,BUFAD STA 0,IDATA ;INITIALIZE AUTO-INC LOCATION FOR DATA COLL.
NIOC A2D NIOP A2D NIOS A2D LDA 0,STRPOS ADDOR 0,0 LDA 1,IDIR MOV 1,1,SZR JMP MEGATIVE LDA 3,COMMON LDA 3,DRIVE,3 POSITIVE: DOA 3,MTR DIB 1,MTR ADDOR 1,1 SUBZ# 0,1,SNC JMP POSITIVE DIB 2,MTR ADDOR 2,2 SUBZ# 0,2,SNC JMP POSITIVE ADDOR 0,0 INTDS JMP LOOPEND OLD: 0 LOOP: LDA 3,COMMON LDA 3,DRIVE,3 LOOP1: DOA 3,MTR DIB 1,MTR SKP1: SKPDZ MTR JSR ZEROR SUBZL# 0,1,SZC JMP LOOP1 DIB 2,MTR SUBZL# 0,2,SZC JMP LOOP1 LOOPEND: STA 0,OLD JSR@ .+1 ONEPT ADD 1,0 JMP LOOP EXIT: LDA 3,COMMON LDA 1,DRIVE,3 LDA 0,DEV COM 0,0 AND 0,1 STA 1,DRIVE,3 DOA 1,MTR ;CLEAR CURRENT DRIVE BITS SUBO 0,0 STA 0,DEV ;CLEAR DRIVER WORD STA 0,DONE LDA 0,TEMP STA@ 0,MBUFAD INTEN JSR@ .FRET ;COMMENTS - DATA AREAS FOLLOW UPARR: .+1 ISZ IBUFAD DSZ IBUFAD ISZ IBUFAD LDA 1,1,3 LDA 1,-1,3 INCREM: 19.
MBUFAD: 0 SKPER: SKPDZ MTR JMER: JMP .+2 TEMP: 0 TIME: 0 ;TEMPORARY SAVE FOR NIOS TIME SCANAD: .+1 100001 ;LINEAR DRIVE 40001 ;LINEAR DRIVE - NEGATIVE DEV: 0 COMMON: COMMUN NEGATIVE: LDA 3,COMMON LDA 3,DRIVE,3 LOOP2: DOA 3,MTR DIB 1,MTR ADDOR 1,1 SUBZ# 1,0,SNC JMP LOOP2 DIB 2,MTR SUBZ# 2,0,SNC JMP LOOP2 ADDOR 0,0 INTDS JMP NLOPEND NLOOP: LDA 3,COMMON LDA 3,DRIVE,3 LOOPE: DOA 3,MTR DIB 1,MTR SKP2:SKPDZ MTR JSR ZEROR ADCZL# 0,1,SNC JMP LOOP3 DIB 2,MTR ADCZL# 0,2,SNC JMP LOOP3 NLOPEND: STA 0,OLD JSR@ .+1 ONEPT SUB 1.0 JMP NLOOP a ZERO: STA 3,ZEROR-1 LDA 2,JMER STA 2,-2,3 STA 1,TEMP LDA 3,COMMON LDA 3,DRIVE,3 JMP@ ZERUR-1 .END Annexe A Partie X @@@@@@@@@@@.SR 9/4/75 RSMW @@@@L @@@@@@ENK POINT INITATE @@@@@L REHS@@@ .@@TLE FEGREAK .ENT REGREAK .CXTD .CPYL..FRET,ABREAK,CBREAK,.FCAL,EXIT .NREL USIP.12 ;ADDRESS OF USER STACK TABLE 0 REBREAK: JSR@ .CPYL LDA 2,USTP LDA 0,AADR STA 0,11,2 LDA 0,CADR STA 0,12,2 JSR@ .FRET ABI: JSR@ .FCAL ABREAK 0 JSR@ .FCAL EXIT 0 CBI: JSR@ .FCAL CBREAK 0 JSR@ .FCAL EXIT 0 AADR: ABI CADR:CBI .END Annexe A Partie XI ;DISPLAY.SR 9/30/75 RSMW ;MODEL I DISPLAY DRIVER FOR VIDEO TERMINAL (TTY) ;CALL DISLAY (ICHARS (1920/2), ICOUNT) ;CALL DRISPLAY (ICHARS, ICOUNT) .TITLE DISPLAY .ENT DISPLAY, RDISPLAY,RBLOCK .EXTD .CPYL,.FRET BUFAD=24 ;AUTO INCREMENT ADDRESS FOR OUTPUT FROM READ BLOCK .NREL 2 DISPLAY: JSR@ .CPYL LDA 0,-167,3 LDA@ 1,-166,3 LDA 2,SWITCH MOVL# 2,2,SZC JMP WPEN STA 0,BUFAD STA 1,ICOUNT LDR 0,WRITR SU60 1,1 .SYSTM .OPEN 3 JMP ERR1 LDA 2,SWITCH ADDOR 2,2 STA 2,SWITCH LDA 0,BUFAD LDA 1,ICOUNT WOPEN: MOVZL 0,0 .SYSTM .WRS 3 JMP ERR2 JSR@ .FRET DATA AREA FOLLOWS .TXIM 1 WRITR: .+1*2 .TXT "$TTO" READR: .+1*2 .TXT "$TTI" ACOUNT: 0 ICOUNT: 0 SWITCH: 0 BYTECT: 0 ENDCHAR: 0 CNTLC: 7 MAX: 1920.
C377: 377 CR: 15 LF: 12 TAB: 11 ERR1: ERR2: ERR3: ERR4: JSR@ .FRET 2 RDISPLAY: JSR@ .CPYL LDA 0,-167,3 LDA 2,-166,3 STA 2,ACOUNT LDA 1,0,2 LDA 2,SWITCH MOVR# 2,2,SZC JMAP ROPEN STA 0,BUFAD STA 1,ICOUNT LDA 0,REARD SUBO 1,1 .SYSTM .OPEN 4 JMP ERR3 LDA 2,SWITCH INC 2,2 STA 2,SWITCH LDA 0,BUFAD LDA 1,ICOUNT ROPEN: MOVZL 0,0 .SYSTM .RDS 4 JMP ERR4 STA@ 1.ACOUNT JSR@ .FRET READ BLOCK SUBROUTINE FOR BEE HIVE TERMINAL 2 RBLOCK: JSR@ .CPYL LDA 0,-167,3 STA 0,BUFAD LDA 2,-16,3 STA 2,ACOUNT LDA 1,0,2 MOV# 1,1,SNR JMP EXIT ;ZERO BYTES INPUT REQ.
LDA 3,MAX SUBZ# 1,3,SNC JMAP EXIT ;GREATER THAN 1920 BYTES STA 1,BYTECT LDA 2,SWITCH MOVL# 2,2,SNC JMP EXIT ;OUTPUT FILE NOT OPEN .SYSTM .ODIS ;DISAELE CONSOLE INTERRUPTS JMP EXIT LDA 0,CNTLC STA 0,ENDCHAR ;IF SEEN TERMINATES INPUT OUTER: ADCZL 2,2 - INNER: .SYSTM .GCHAR JMP EXIT LDA 3,C377 AND 3,0 LDA 3,ENDCHAR SUBZ# 3,0,SNR JMP DONE LDA 3,CR SUBZ# 3,0,SNR JMP INNER LDA 3,LF SUBZ# 3,0,SNR JMP INNER LDA 3,TAB SUBZ# 3,0,SNR JMP INNER MOV 0,0,SNR JMP INNER INC 2,2,SZR JMP ODD ADD 0,1 STA@ 1,BUFAD DSZ BYTECT JMP OUTER JMP EXIT ODD: MOVS 0,1 DSZ BYTECT JMP INNER LDA 3,BUFAD LDA 2,0,3 LDA 3,C377 AND 3,2 ADD 2,1 STA@ 1,BUFAD JMP EXIT DONE: INC 2,2,SZR JMP EVEN LDA 3,BUFAD LDA 2,0,3 LDA 3,C377 AND 3,2 ADD 2,1 STA@ 1,BUFAD EVEN: LDA@ 2,ACOUNT LDA 1,BYTECT SUB 1,2 STA@ 2,ACOUNT EXIT: .SYSTM .OEBL JSR@ .FRET JSR@ .FRET .END Annexe B Partie I C...XRAY.FR C C..28 RUG 19?5 M. WOMAN C.....7/27 WRITE TEMPORARILY ALL DATA ON DP1 INSTEAD OF MT C...............LATER DP1 REPLACED BY FLOPPY...........
C PURPOSE-- OPEN NEW PATIENT INPUT FILE C INITIALIZE BOOKEEPING C ASSUMES ONE PATIENT/TAPE C PARAMETER L1=1,L2=2,L3=3,L4=4,LN=256,KALRC=920 PARAMETER KBI=11,KBO=10,ST=33010K,MTC=256 COMMON IA(388) COMMON/FILES/ IPAT(5), MTX(4), MTO(3), MTI(3),KCL(5),KAN(6) COMMON/CONTROL/LSTP, LHAR, LPRN COMMON/INPUT/IN(256), ICAL(1024) CIMENSION JPT(15), AMGLE(194), ITD(3), ITM(3) EQUIVALENCE(1A(1), ANGLE(1)), (ITD(1), IA(362)), (ITM(1),IA(365)0 EQUIVALENCE(JPT(1), IN(29)), (ISLICE,IN(7)) EQUIVALENCE CHRCSKP, ICAL (KALRC)) DATA IPAT/"C4","PA","T.","SC",0/ DATA KAN/"C4","AN","GL","E.","SC",0/ DATA MTX/"MT","0:","O",0/ DATA MTO/"MT","O",0/ DATA KCL/"CA","LI","B.","SC",0/ DATA LSTP,LHAR,LPRN/"EN","GO","PR"/ 10 TYPE "MOUNT PATIENT TAPE - WNIT 0" WRITE (KBO, 900) 900 FORMAT("AMS GO WHEN READY- END TO STOP") C IHPUT MT CONTROL WORDS READ(KBI,901) KHAR 901 FORMAT(A20 IF (KHAR. EQ.KSTP) .GO TO 800 IF (KHAR. NE. LHAR. AND. KHAR.NE. LPRN) GO TO 10 C C.,REMIND OPERATOR TO INSERT FLOPPY AND READY IT C 15 TYPE "FLOPPY READY ? WRITE (KB0,900) READ (KBI,901) IFLP IF(IFLP.EQ.LSTP) GO TO 800 IF(IFLP.NE.LHAR) GO TO 15 C C INPUT TAPE INITIALIZED .....
C 20 L=L2 CALL INITOMTO, IER).
IF(IER.NE.1) GO TO 810 C C OPEN FILES C L1=PATIENT FILE ON DISK C L2=INPUT MAGNETIC TAPE L=L1.
OPEN L1, IPAT,ATT="RE".LEN=lN*2 L=L3 OPEN L3,KCL L=L4 OPEN L4,KAN.ATT="RE".LEN=194*4 LuL2 CALL MTOPD (L2, MTX, 8, IER) IF(IER.ME.1) GO TO 820 C C MOVE PATIENT HEADER TO DISK FILE C CALL MTDIO9L2,LN,IN,ISAT,IS) IF(IS.NE.1) GO TO 838 C C PRINT PATIENT HERDER NAME SLICE C 30 JSLICE=(ISLICE.AND.377K) WRITE(10,940) JPT.JSLICE 940 FORMAT("PATIENT: ",15A2,10X,"SLICE ",13) C C EAD CALIBRATION FILE C L=L3 CALL RDBLK(L3,0,ICAL,3.IER) IF(IER.NE.1) GO TO 840 IN(MTC-3)=0 IN(MTC-2)=ICAL(KALRC) IN(MTC-1)=MTX(3) IN(MTC)=1 IF(KHAR.EQ.LPRH) ACCEPT "PRINT PARAMETER ?",IN(MTC-3) L=L1 CALL WRBLK(L1,0,IN,1,IER) IF (IER. NE.1) GO TO 840 C C BUILD C4ANGLE.SC C CALL STCON (IA.388,0) CALL DATE(ITD.IER) CALL TIME(ITM,IER) C**********MOVE THE PATIENT NAME CALL BMOVE (IN(9), IA(368).15) C**********MOVE THE PATIENT CODE CALL BMOVE (IN(47). IA(383),5) C WRITE BINARY (L4) ANGLE C C SKIP CORRECT MUMSER OF RECORDS (LOGICAL RECORDS) C IF(NRCSKP.EA.00 GO TO 500 C SKIP IS FROUIRED L=L2 TYPE "SKIP IS REQUIRED", NRCSKP DO 100 I=1,NRCSKP DO 95 J=1,3 CALL MTDIO (L2,SF,IN,ISTAT,IS) IF(IS.NE.1) GO TO 850 ICK=ISTAT.AND.100000K IF(ICK.NE.0) GO TO 850 95 CONTINUE 188 CONTINUE C C 500 K=NRCSKP +1 TYPE "MT-POSITIONED LOGICAL FILE",K CLOSE L1 CLOSE L3 CLOSE L4 CALL FCHAN ("RFSCAN.SV") C.......ERRORS/STOPS C USER REQUESTED STOP 800 TYPE "800 STOP REQUESTED BY USER STOP NORMAL C C MAGNETIC TAPE INIT ERROR C C 810 TYPE'810 MT INIT ERROR UNIT =" ,L GO TO 899 C C C 820 TYPE "820 MT OPEN ERROR UNIT =" ,L GO TO 899 C C MT READING ERROR C 830 TYPE "830 MT READ ERROR" WRITE (K80. 902) ISTAT. IS 902 FORMAT (" HARDWARE STATUS", 010, " SOFTWARE CONTROL", 15) GO TO 30 C C DISK READ WRITE ERROR C 840 TYPE "840 DISK ERROR", L,IER GO TO 899 C C IT SKIPPING ERROR C 858 TYPE "850 MT FILE FMT ERROR", I.J.ISTAT, IS C GO TO B99 899 CONTINUE STOP ABNORMAL CONDITION END C..RFSCAN,FR C C 05 SEPT 1975 W.HOMAN C.......7/26.. RE INSERT MULTI TASKING,509/508, ANGLE SUB C C PURPOSE--WRITE DATA FROM 12 DETECTORS AND REFERENCE ONTO A DISK FILE FOR PROCESSING BY THE CONVOLUTIOND AHD BACKPROJECTION....
C C > > > > > > > > > LOAD LINE LOOKS AS FOLLOWS > > > > > > > > > > > > C C RLDR RFSCAN NPROC RFINTER NOPCL KORR KREAD RFDSKIO BLOCK LONG @FLB@ --FTN V C C****************COMMDN AREA**************** PARAMETER DECT=-5.5.KRD=I.SF=3000SK,HOME=0 C*******KRD=0 FOR SAI CONTROLLER**************** C COMMON IN(3760),R(750),V(750),X(512),X(512).W(512).ANGLE(194) COMMON/CO/CENIER(180),Y(180).JZX(4,12).FACT.SCALE.IANG COMMON/MULTI/KEY,IBFR,KEYT,JREAD,XANG COMMON/IO/IOO(6),KTRL,IPM(6) COMMON/AVERAG/AVI,AVH,AVX INTEGER TME(6) EQUIVALENCE (ANG.IN(1)) EQUIVALENCE (IOO(1),L1),(IOO(2),L2),(IOO(3),L3) EQUIVALEHCE (IOO(4),L4),(IOO(5),L5),(IOO(6),L6) DATA ABI,AVM,AVX/1.0,1.0.1.0/ DATA IANG, ISCALE, JREAD/1,0,0/ DATA IOO/1,2,3,4,5,6/ DATA KTRL/0/ DATA IPM/"SC", 508,0,180,1,1/ C C L1=MT INPUT DMA C L2=C4ANGLE.SC FILE FOR BACKPROJECTION C L3=RAW.SC FILE - FILE FOR NEW CONVOLUTION C L4=RAW.KO FILE - FILE FOR OLD CONVOLUTION C L5=PARM.DI FILE-PARAMETER CONTROLL FILE FOR CONVOLUTION C L6=CALIB.SC FILE FOR PRE PROCESSING PROGRAM SCANNER C C******************************************* C KEY=0 KEYT=0 TYPE "RFSCAN-VER 5.1 10/14/75 CALL TIME (TME,IER) TASK DSKIO (ISD), ID=2,PRI=1,ERR=806 C C C.......OPEN FILES AND INITIAL IZE...........
C CALL DPCL(1) READ BINARY (L2) ANGLE CALL MTDIO (1.256,IN,ISTAT,ISMT) IF(ISMT.NE.1) GO TO 800 C READ CALIB.SC--CALIBRATION FLLE....
COLL CORR(IS) IF(IS-1) 823,5,820 C C 5 CONTINUE CALL PRI (5) TASK TAPIO (JSMT), ID=3,PRI=4,ERR=806 DO 500 NORCS = 1,15 C C C....PROCESS LOOP FOR TIME,REF,V0-V2 C CALL REC (KEYT,ISMT) JREAD=0 XANG=ANG IF(ISMT.NE.KRD) GO TO 800 DO 100 J=2,4 K=750*J+10 IF(J.HE.2) GO TO 85 C C....UNPACK REFERENCE AND FIRST DECT C ISCALE=1 DO 80 I=1,750 R(I)=IN(I+760) L=I+K 80 V(I)=FLOAT(IN(L)) GO TO 95 C....UNPACK REMAINTNG DECTR'S 85 DO 90 I=1,750 L=k+I 90 V(I)=IN(L) C C...REF IN R(I) DECT(J) IN V(I)..
C ISCALE = ISCALE+1 95 IF(J.EO.4) JREAD=1 CALL PROC (ISCALE,NORCS) IF(ISCALE.LT.1) GO TO 810 100 CONTIBUE C C..PROCESS LOOP FOR V3-V7 C CALL REC(KEYT, ISMT) JREAD=0 IF(ISMT.NE.KRD) GO TO 800 DO 150 J=1,5 K=750*(J-1)+10 DO 110 I=1,750 L=I+K 110 V(I)=IN(L) C ISCALE=ISCALE+1 IF(J.EQ.S) JREAD=1 CALL PROC (ISCALE,NORCS) IF(ISCALE.LT.1) GO TO 810 150 CONTINUE C C..PROCESS LOOP FOR V8-Bll...
C CALL REC (KEYT, ISMT) JREAD=0 IF(ISMT.NE.KRD) GO TO 800 DO 200 J=1,4 K=750*(J-1)+10 C' DO 170 I=1,750 L=I+K 170 V(I)=IN(L) ISCALE=ISCALE+1 IF(J.EQ.4) JREAD=1 CALL PROC(ISCALE, NORCS) IF(ISCALE.LT.1) GO TO 810 200 CONTINUE 500 CONTINUE C C..15 LOGICAL DATA RECORDS (45 PHYSICAL) AND 180 ANSLES PROCESSED C CALL FSEEK (L2,HOME) WRITE BINARY (L2) ANGLE C C. SET UP CONTROL FILE FOR CONVOLUTION PGN C WRITE BINARY (L5) IPM C C.. CLOSE ALL FILES..
C CALL TIME (TME(4). IER).
Un registre d'entrée/sortie IOR est couplé à deux fenêtres PO et PI entre les deux groupes de registres à décalage. La par- tie indicatif du registre IOR alimente deux comparateurs distincts 20 et 21, qui sont également alimentés par les parties indicatif des mots apparaissant aux extrémités des deux blocs de registres à décalage respectivement, et la partie données du registre IOR est couplée aux fils véhiculant les parties données de mots mis en mémoire entre les deux blocs de registres 9 décalage. Le sys tème comprend également un ensemble de circuits de commande 11 et deux compteurs EC et TO, les compteurs de tête et de queue.En fonctionnement, le système met en mémoire une information sous la forme d'une séquence continue unique de mots quelque part dans la séquence de registres 8 décalage (la séquence de registres 8 décalage étant cyclique), et les compteurs HC et TO conservent les adresses de la tête et de la queue de la séquence de mots.
Pour discuter le fonctionnement du système, il est commode d'analyser les instructions de programmation de LECTURE, d'ECRI TURE et d'EXERACTION dans les opérations de registres à décalage de RECHERCHE, d1 INSERTION et de SUPPRESSION. Une instruction quelconque est accomplie en commençant avec une opération de RECHERCHE jusqu'à ce que l'enregistrement désiré soit trouvé; une opération d' INSERTION ou de SUPPRESSION ou une transcription pure et simple à partir du registre à décalage vers le registre IOR Opeut ensuite suivre. Comme dans le système de la Figure 1, les enregistrements passent devant les fenêtres en ordre d'indicatif ascendant.
Dans le système représenté à la Figure 2, l'opération RECHERCHE est, en général, effectuée en décalant la totalité de la séquence de mots mis en mémoire. Les deux comparateurs 20 et 21 aux fenêtres PO et Pi recherchent chacun une condition qui, par commodité, peut être appelée une comparaison "réussie". Plus précisément, chaque comparateur est agencé pour détecter lorsque l'indicatif de ltenregistrement couramment disponible dans la séquence mise en mémoire s'arrête étant moindre que l'indicatif désiré dans le registre IOR: ceci peut être une égalité vraie des deux indicatifs, ou ce peut être une modification d'indicatif dans la séquence mise en mémoire depuis moins que l'indicatif désiré direct jusqu a plus que l'indicatif désiré.Pour l'opération de RECHERCHE générale, chaque comparateur doit détecter un indicatif moindre que l'indicatif désiré avant qu'une oomparaison "réussie" puisse être obtenue; ceci pour éviter une comparaison réussie indiquée immédiatement si les indicatifs dans la séquence mise en mémoire passant devant une fenêtre sont beaucoup plus élevés que l'indicatif désiré.
Lors d'une comparaison réussie effectuée par l'un ou l'autre des comparateurs 20 et 21, la fenêtre correspondante des fenêtres PO et Pi est sélectionnée. Le mot désiré est ensuite dans le dernier étage de l'un ou l'autre registre à décalage SR3 ou registre a décalage SR7. Si une instruction de LECTURE est effectuée, la partie données de ce mot est ensuite transcrite dans le registre IOR, achevant l'instruction. Si une instruction d'INSCRIPTION est effectuée, une opération d'INSERTION suit, l'extrémité de tête de la séquence de mots mise en mémoire étant décalée d'un mot et le nouveau mot étant inscrit dans le registre à décalage'SR4 ou SRO, selon la fenêtre qui a été sélectionnée.Si une instruction d'EXTRACTION est effectuée, une opération de SUPPRESSION suit, la partie données du dernier mot dans le registre à décalage SR3 ou SR7 étant transcrite dans le registre IOR et l'extrémité de fin de la séquence de mots mise en mémoire étant décalée d'un mot pour supprimer ce mot de la séquence.
Chaque fois qu'un décalage de mot apparaît dans une opération de RECHERCHE, à la fois les compteurs HC et TC sont augmentés; le compteur HC est augmenté également pour une opération d'INSERTION, et le compteur FC pour une opération de SUPPRES- SION. Les comptages dans ces deux compteurs sont utilisés pour bloquer les comparateurs 20 et 21 lorsque la séquence de mots en mémoire ne comprend pas la dernière position de mot du registre SR7 et SR3 respectivement, de sorte que les comparateurs fonctionnent seulement lorsqu'ils regardent la séquence de mots en mémoire, et non lorsqu'ils regardent une partie vide de la boucle de registres à décalage.
Les compteurs HC et TO commandent également le décalage des registres à décalage. Pour une opération de RECHERCHE, tous les registres à décalage sont décalés ensemble. Pour les opérations d'INSERTION et de SUPPRESSION, toutefois, une extrémité de la séquence de mots en mémoire doit être décalée tandis que l'autre extrémité demeure stationnaire. La façon précise dont ceci est obtenu dépend de l'opération effectuée et de la fenêtre sélectionnée. La sélection de registres à décalage en vue du décalage pour une opération d'INSERTION sera expliquée en détail; la sélection pour une opération de SUPPRESSION est tout à fait similaire.
Pour une opération d'INSERTION, la tête de la séquence de mots en mémoire doit être décalée, et il est commode de dealer seulement ces registres à décalage contenant réellement une partie de l'extrémité de tête de la séquence. Pour ceci, les signaux x3, x2 et x1 en provenance des trois emplacements supérieurs du compteur HC (le signal x3 étant le bit le plus significatif) sont nécessaires; ainsi,les signaux x3 x2 x1 = 1 1 0 indiqueraient que la tête de la séquence de mots en mémoire était le registre SR6 (6 = 110 binaire). Les signaux PO et P1 , en provenance des comparateurs 20 et 21 et indiquant la sélection das fenêtres PO et P1 respectivement, sont également utilisés. Ensuite, les signaux de sélection pour les registres à décalage sont donnés par SR7 = x3 x2 x1 + P1x3 , SR6 = x3 x2+ P1x3 , SR5 = x3 (x2 + x1) + P1x3, SR4 = x3 + P1 SR3 x3, x2 xl + PO x3 SR2 = x3, x2 + PO x3 SR1 = x3 (x2 + xl) + O ffi 0 = + Po Ces signaux sont générés par un ensemble de circuits logique convenable dans l'ensemble de circuits de commande 11 et sont utilisés pour déclencher des impulsions de décalage pour les registres à décalage B7 à SRO respectivement.
Une fonction finale est effectuée par les compteurs HC et TC. Leur différence est continuellement contrôlée pour conserver une trace du nombre total de mots en mémoire dans le système, pour s'assurer que le système n'est pas surchargé. Le nombre maximal de mots que le système peut conserver en mémoire est 7 fois le nombre de mots que l'un quelconque des registres à décalage SRO à SR7 peut stocker. ta raison de ceci est que la tête et la queue de la séquence de mots en mémoire ciojv#nt toujours être dans des registres à décalage différents, autrement les opérations d'INSERtION et de SUPPRESSION ne peuvent pas toujours être effectuées avec succès.
Ainsi qu'on l'a décrit, il a été supposé que les registres à décalage sont "statiques", par exemple consistant en bascules traditionnelles. Il se peut qu'ils stockent l'information selon une forme évanescente plutôt que permanente, nécessitant des cycles de régénération périodiques. Ceux-ci peuvent ou non impliquer nécessairement un décalage de l'information; dans l'un ou l'autre cas, la technique la plus simple est de disposer une "horloge lente" pour interrompre le fonctionnement du système à des intervalles convenables pour effectuer un cycle de régénération, mais dans le cas où la régénération est obtenue par décalage, des cycles de régénération spéciaux sont seulement essentiels si l'information dans une partie du système n'a pas été déplacée pendant une période de régénération complète.Ainsi, si une opération de LECTURE ou de RECHERCHE est suivie par une autre à l'intérieur d'un cycle de régénération, la queue de la séquence de mots en mémoire aura été régénérée automatiquement. Des rythmeurs qui détectent Si la tête et la queue de la séquence de mots en mémoire ont besoin d'une régénération peuvent être utilisées pour insérer des cycles de régénération spéciaux en cas de besoin.
les deux systèmes décrits jusqu'ici ont tous deux fonctionné avec des mots ou enregistrements de format fixe. Il est possible pour des enregistrements d'avoir un format variable, en particulier du fait que la partie données peut être de longueur variable. Un système similaire à celui de la Figure 2, mais avec des enregistrements de longueur variable et certaines autres différences, sera à présent décrit en se référant aux Figures 3 et 4.