OpenLLM-France/wikimedia huggingface dataset:
# 360 Assembly/360 Assemblers
## IBM Provided

There are two assemblers. The older "Basic Assembly Language" and the "High Level Assembler". There are certain constructs in the macro language as well as some of the newer assembly language instructions which are available only in the High Level Assembler.

## Third-Party Assemblers

* The ASSEMBH assembler for the Fujitsu BS2000 is essentially the same as IBM's High Level Assembler.
* The z390 Assembler provides an open-source assembler and emulation of the 360, 370 and z/System computers.
For more information, check out the pages IBM basic assembly language and IBM High Level Assembler on Wikipedia.
360 Assembly Language :
| 360 Family | Introduction · Basic FAQ · 360 Family · 360 Architecture |
| 360 Instruction Set | 360 Instructions · Branch Instructions · Data Transfer Instructions · Control Flow Instructions · Arithmetic Instructions · Logic Instructions · Shift and Rotate Instructions · Priveleged Instructions · Other Instructions |
| Syntaxes and Assemblers | 360 Assemblers· Pseudo Instructions |
| Instruction Extensions | Floating Point · High-Level Languages |
# 360 Assembly/360 Instructions/A

A - Add - Opcode 5A

## Format

    A 2,N2
    A 11,106(0,10)
The specific syntax is
    A target register,offset(index register,base register)
Where the offset, index register and base register values will be determined automatically by the assembler if the USING pseudo-instruction has been used, and the target address label used is within 4096 bytes of the value of some base register.
RX Instruction (4 bytes) :
| Byte 1 | Byte 2 | Byte 2 | Bytes 3 and 4 | Bytes 3 and 4 | Bytes 3 and 4 |
| Byte 1 | target register | Source Address | Source Address | Source Address | Source Address |
| (8 bits) Opcode 5A | (4 bits) 0..F | (4 bits) index register 0..F | (4 bits) base register 0..F | (12 bits) offset 0..FFF | (12 bits) offset 0..FFF |
* The first argument is a target register which value is affected by the instruction.
* The second argument is the source value location.
* The mask, base_register and index_register values are 0 to 15. The offset value is 0 to 4095.

## Availability

The A instruction is available on all models of the 360, 370 and z/System.

## Operation

The A instruction reads 32-bit integer value from the memory address specified by the argument and adds it to the value of register specified by the first argument. The Condition Code field in the Program Status Word is changed according to the resulting value.
The source argument address shall be aligned to word boundary (i.e. 4 bytes).

## Condition Codes

If signed integer overflow occurs, i.e. sum is not between −2$^{31}$ and 2$^{31}$−1, CC is set to 3. Otherwise, CC is set to 0, 1 or 2, if sum is equal to zero, below zero or above zero accordingly.

## Exceptions and Faults

* If signed integer overflow is detected and the bit 36 in PSW is set, operation exception occurs.
* The source address must be within the range of valid memory or an operation exception occurs.
* The storage key for the source address must be the same as the current process or a memory protect violate exception occurs.

## Related instructions

* To add value from register, see AR.
* To add half-word value from memory, see AH.
* To add value and set condition codes according to unsigned arithmetic, or add not most significant part of multi-word integer value, see AL or ALR.
* To add floating-point values, see AE, AER, AD or ADR.
* To subtract integer value, see S, SR, SH, SL or SLR.
* To check condition code, see BC or BCR.
| Previous Instruction ZAP | 360 Assembly Instructions {{{name}}} | Next Instruction AD |
| Previous Opcode 59 | 360 Assembly Instructions {{{name}}} | Next Opcode 5B |
360 Assembly Language :
| 360 Family | Introduction · Basic FAQ · 360 Family · 360 Architecture |
| 360 Instruction Set | 360 Instructions · Branch Instructions · Data Transfer Instructions · Control Flow Instructions · Arithmetic Instructions · Logic Instructions · Shift and Rotate Instructions · Priveleged Instructions · Other Instructions |
| Syntaxes and Assemblers | 360 Assemblers· Pseudo Instructions |
| Instruction Extensions | Floating Point · High-Level Languages |
# 360 Assembly

This book is about assembly language programming for the Fujitsu BS2000 Mainframe and the IBM 360, 370, ESA/390, 93xx and z/System family of mainframe computers. The same assembly language was also used on the Univac 90/60, 90/70, and 90/80 mainframes. The machines generally provided upward compatibility for user programs (a program such as a payroll program written for MVS on a 24-bit 360 in the 1960 or early 1970s, will run unmodified on 31-bit VS/1 in the 1980s. While a later program (say an accounts payable application) written for 31-bit VS/1 in the 1980s wouldn't run on a 360 if it used 31-bit operations, both programs will run unmodified under z/OS on a 64-bit z/System in 2015.)
The term "360" will be used to refer to an instruction which works on all of these models, while the other designations - System/370, S/370, 370; ESA/390, 390; z/System, Z - will be used to refer to features available only in later models of this processor type. This book will attempt to teach how to program in 360 assembly, the history of the processor family, and the basic architecture of 360 and later processor systems.

## Table of Contents

* Introduction
* Basic FAQ

### 360 Basics

* 360 Family
* 360 Architecture

### 360 Instruction Set

* 360 Instructions
* Branch Instructions
* Data Transfer Instructions
* Control Flow Instructions
* Arithmetic Instructions
* Logic Instructions
* Shift and Rotate Instructions
* Other Instructions
* Pseudo Instructions

### Syntax and Assemblers

* 360 Assemblers

### Instruction Extensions

* Floating Point
* High-Level Languages

## Further reading
### Wikimedia Sources

* C Programming
* C++ Programming
* Operating System Design
* Embedded Systems
* Floating Point
# 360 Assembly/360 Instructions/ACTR

The ACTR pseudo-instruction is used to instruct the assembler to limit the number of AGO and AIF pseudo-instructions to be executed. The ACTR pseudo-instruction is primarily used to prevent endless loops during conditional assembly or macro processing.
Format
    .SYM ACTR value
Where
* .SYM is an optional conditional assembly label (a sequence symbol), which may be omitted, and
* value is a numeric expression greater than zero. The value indicates the maximum number of AGO or successfully executed AIF pseudo-instructions that this macro or conditional assembly is permitted to execute.
Example
    ACTR 30000
Meaning that a maximum of 30000 AGO or successful AIF instructions may be executed before assembly is stopped (if inside a macro) or ends (if in conditional assembly). The assembler counts the number of these against the ACTR value, subtracting one for each and if the count becomes zero or negative, processing is terminated.
In a macro, if the number of AGO or successful AIF pseudo instructions that have been executed reaches this value, the macro is exited at that point. If this macro was called from another macro, assembly resumes at the place where this macro was called. This macro's ACTR value has no affect on the calling macro, if it did not have an ACTR pseudo-instruction it continues without limits. If it did have an ACTR pseudo instruction, it continues with the limit it had for whatever unused part of its limit it has remaining.
In conditional assembly outside of a macro, if the number of AGO or successful AIF instructions reaches that value, the assembly ends as if the source code file had ended at that point. The remainder of the program is treated as comments except ewrrors will be flagged.
The value supplied is divided by 2 if a serious error is detected.
360 Assembler Pseudo Instructions :
| Address Related | ADATA • CNOP • DROP • EQU • LOCTR • LTORG • ORG • USING |
| Code Related | ALIAS • AMODE • CATTR • COM • CSECT • CXD • DSECT • DXD • END • ENTRY • EXTRN • OPSYN • RMODE • RSECT • START • WXTRN • XATTR |
| Data Related | CCW • CCW0 • CCW1 • DC • DS |
| Conditional Assembly and Macro related | ACTR • AGO • AIF • AINSERT • ANOP • AREAD • COPY • GBLA / GBLB / GBLC • LCLA / LCLB / LCLC • MACRO • MEND • MEXIT • MNOTE • SETA / SETB / SETC |
| Listing, output and source related | Comments • *PROCESS • ACONTROL • EJECT • END • EXITCTL •ICTL • ISEQ • POP • PRINT • PUNCH • PUSH • REPRO • SPACE • TITLE |
360 Assembly Language :
| 360 Family | Introduction · Basic FAQ · 360 Family · 360 Architecture |
| 360 Instruction Set | 360 Instructions · Branch Instructions · Data Transfer Instructions · Control Flow Instructions · Arithmetic Instructions · Logic Instructions · Shift and Rotate Instructions · Priveleged Instructions · Other Instructions |
| Syntaxes and Assemblers | 360 Assemblers· Pseudo Instructions |
| Instruction Extensions | Floating Point · High-Level Languages |
# 2ch Chronicle/Repossession

On February 19, 2014, Jim Watkins, from the San Francisco-based N.T. Technology web hosting service, repossessed the 2ch.net domain and all servers, claiming that the "previous administration" failed to pay the bills (perhaps after getting showered with lawsuits), and announcing that he himself would take over as the new admin. Since many users believed this was a joke, ZUN (creator of Touhou) had to explain that the situation was real.
To whom it may concern: The previous management was not able to generate enough income to pay the bills for the expenses of running 2ch. Previously I allowed some autonomy to them. During that time my name has been slandered. The ability for 2ch to generate enough income to stay open was damaged. I hope that with proper management that 2ch can recover.

## 2ch.sc

Things quietly end; time has passed like this.
Hiroyuki expressed regret on the decision, but did not pursue charges or make appeals. However, he did scrape the entire 2ch.net website and its massive thread archives to build a new website, 2ch.sc. This would have been fine, had Hiroyuki not done it in a way that sucked up much of Jim Watkin's bandwidth and cost Jim lots of money.
* Hiroyuki Scrapes 2ch.net into 2ch.sc - warning - very biased
# Ada Programming/Attributes/'Small
## Description

Small of the fixed-point type.
S'Small denotes the small of the type of S. The value of this attribute is of the type universal_real.
# Ada Programming/Attributes/'Scale
## Description

Position of the fixed-point relative to the rightmost significant digits of values of subtype S.
S'Scale denotes the scale of the subtype S, defined as the value N such that S'Delta = 10.0**(–N). The scale indicates the position of the point relative to the rightmost significant digits of values of subtype S. The value of this attribute is of the type universal_integer.
# Ada Programming/Attributes/'Signed Zeros
## Description

True if positive and negative signed zeros are representable.
Yields the value True if the hardware representation for the type T has the capability of representing both positively and negatively signed zeros, these being generated and used by the predefined operations of the type T as specified in IEC 559:1989; yields the value False otherwise. The value of this attribute is of the predefined type Boolean.
# Ada Programming/Attributes/'Size:3

A common Ada programming mistake is to assume that specifying 'Size for a type T forces the compiler to allocate exactly this number of bits for objects of this type. This is not true. The specified T'Size will force the compiler to use this size for components in packed arrays and records and in Unchecked_Conversion, but the compiler is still free to allocate more bits for stand-alone objects.
Use 'Size on the object itself to force the object to the specified value.
# Ada Programming/Attributes/'Size
## Description

R'Size is a representation attribute used to get the number of bits of an object or type:
* When applied to an object, 'Size yields the actual number of bits allocated to store the object.
* When applied to a subtype, 'Size yields the smallest n such that all values fit in the range 0 .. 2$^n$-1 for only positive values, else -2$^{n-1}$ .. 2$^{n-1}$-1.
The 'Size attribute may also be used in an attribute definition clause to set the size for a first subtype. In special cases, it is even possible to force a biased representation by using a smaller value than the n above.

## Examples

This subtype allows a biased representation with only three bits because it comprises only eight values:
Without the size clause, T'Size would return 10 because 2$^{10}$-1 = 1023.
The output with GNAT 10.2.0 will be:
Try it yourself and see how your compiler does.
The value of Size can also be specified using an attribute definition clause. For example, the following declarations specify a C99 compatible bool:

## Incorrect usages

A common Ada programming mistake is to assume that specifying 'Size for a type T forces the compiler to allocate exactly this number of bits for objects of this type. This is not true. The specified T'Size will force the compiler to use this size for components in packed arrays and records and in Unchecked_Conversion, but the compiler is still free to allocate more bits for stand-alone objects.
Use 'Size on the object itself to force the object to the specified value.

## See also
### Wikibook

* Ada Programming
* Ada Programming/Attributes
* Ada Programming/Attributes/'Component Size
* Ada Programming/Attributes/'Max Size In Storage Elements
* Ada Programming/Attributes/'Value Size (implementation defined)
* Ada Programming/Attributes/'Object Size (implementation defined)

### Ada 83 Reference Manual

* 13.7.2: Representation Attributes
* Annex A: Predefined Language Attributes

### Ada 95 Reference Manual

* 13.3: Operational and Representation Attributes
* Annex K: Language-Defined Attributes

### Ada 2005 Reference Manual

* 13.3: Operational and Representation Attributes
* Annex K: Language-Defined Attributes

### Ada 2012 Reference Manual

* 13.3: Operational and Representation Attributes
* Annex K: Language-Defined Aspects and Attributes
# Ada Programming/Attributes/'Small Denominator
## Description

typ'Small_Denominator for any fixed-point subtype yields the denominator in the representation of typ'Small as a rational number with coprime factors (i.e. as an irreducible fraction).
# Ada Programming/Attributes/'Safe Small
## Description

The Safe_Small attribute is provided for compatibility with Ada 83. See the Ada 83 reference manual for an exact description of the semantics of this attribute.
# Ada Programming/Attributes/'Scaling
## Description

Scaling by a power of the hardware radix.
Let v be the value X · T'Machine_Radix$^{Adjustment}$. If v is a machine number of the type T, or if |v| ≥ T'Model_Small, the function yields v; otherwise, it yields either one of the machine numbers of the type T adjacent to v. Constraint_Error is optionally raised if v is outside the base range of S. A zero result has the sign of X when S'Signed_Zeros is True.
# Ada Programming/Attributes/'Simple Storage Pool
## Description

For every nonformal, nonderived access-to-object type Acc, the representation attribute Simple_Storage_Pool may be specified via an attribute_definition_clause (or by specifying the equivalent aspect):
The name given in an attribute_definition_clause for the Simple_Storage_Pool attribute shall denote a variable of a ‘simple storage pool type’ (see pragma ).
The use of this attribute is only allowed for a prefix denoting a type for which it has been specified. The type of the attribute is the type of the variable specified as the simple storage pool of the access type, and the attribute denotes that variable.
It is illegal to specify both Storage_Pool and Simple_Storage_Pool for the same access type.
If the Simple_Storage_Pool attribute has been specified for an access type, then applying the Storage_Pool attribute to the type is flagged with a warning and its evaluation raises the exception Program_Error.
If the Simple_Storage_Pool attribute has been specified for an access type S, then the evaluation of the attribute S'Storage_Size returns the result of calling Storage_Size (S'Simple_Storage_Pool), which is intended to indicate the number of storage elements reserved for the simple storage pool. If the Storage_Size function has not been defined for the simple storage pool type, then this attribute returns zero.
If an access type S has a specified simple storage pool of type SSP, then the evaluation of an allocator for that access type calls the primitive Allocate procedure for type SSP, passing S'Simple_Storage_Pool as the pool parameter. The detailed semantics of such allocators is the same as those defined for allocators in section 13.11 of the , with the term simple storage pool substituted for storage pool.
If an access type S has a specified simple storage pool of type SSP, then a call to an instance of the Ada.Unchecked_Deallocation for that access type invokes the primitive Deallocate procedure for type SSP, passing S'Simple_Storage_Pool as the pool parameter. The detailed semantics of such unchecked deallocations is the same as defined in section 13.11.2 of the Ada Reference Manual, except that the term simple storage pool is substituted for storage pool.
# A-level Mathematics/OCR/S1/Bivariate Data
## Bivariate data

SYLABUS EXTRACT:
(a) calculate, both from simple raw data and from summarised data, the product moment correlation coefficient for a set of bivariate data; (b) understand the basis of Spearman’s coefficient of rank correlation, and calculate its value (questions set will not involve tied ranks); (c) interpret the value of a product moment correlation coefficient or of Spearman’s rank correlation coefficient in relation to the appearance of a scatter diagram, with particular reference to values close to 1, − 0,1; (d) understand that the value of a correlation coefficient is unaffected by linear transformations (coding) of the variables; (e) understand the difference between an independent (or controlled) variable and a dependent variable; (f) understand the concepts of least squares and regression lines in the context of a scatter diagram; (g) calculate, both from simple raw data and from summarised data, the equation of a regression line, understand the distinction between the regression line of y on x and that of x on y, and use the fact that both regression lines pass through the mean centre (x, y); (h) select and use, in the context of a problem, the appropriate regression line to estimate a value, and be able to interpret in context the uncertainties of such estimations.
# A-level Mathematics/OCR/S1/Probability

New S1 syllabus does not include lot of these topics

## Combinations and Permutations

Permutation - The total number of ways of arranging r objects from n, where order is important, e.g. choosing a school football team and positions, where anyone can play any position
Combination - The total number of ways of choosing r objects from n, where order is not important, e.g. choosing three cards from a deck, so that you gain a 2, a 3 and a 4 in no particular order
Combinations - Use the button marked nCr on a calculator, or the formula ${\frac {n!}{(n-r)!r!}}$
Permutations - Use the button marked nPr on a calculator, or the formula ${\frac {n!}{(n-r)!}}$

## Probability

Syllabus Extract:
(a) understand the terms permutation and combination; (b) solve problems about selections, e.g. finding the number of ways in which a team of 3 men and 2 women can be selected from a group of 6 men and 5 women; (c) solve problems about arrangements of objects in a line, including those involving (i) repetition (e.g. the number of ways of arranging the letters of the word ‘NEEDLESS’), (ii) restriction (e.g. the number of ways several people can stand in a line if 2 particular people must — or must not — stand next to each other); (d) evaluate probabilities in simple cases by means of enumeration of elementary events (e.g. for the total score when two fair dice are thrown) or by calculation using permutations and combinations; (e) use addition and multiplication of probabilities, as appropriate, in simple cases; (f) understand informally the meaning of exclusive and independent events, and calculate and use conditional probabilities in simple cases, e.g. situations that can be represented by means of a tree diagram.
# A-level Mathematics/OCR/S1/Representation of data
## Representation of data

Data that is presented in a systematic manner is much easier to understand. Consequently the next step after data collection is to lay the information out in an orderly way - usually as a table.
A well constructed table must have a) A clear, comprehensive, explanatory title b) Be systematically formated c) Identify the source of the data d) All units of measurment must be clearly stated (sometimes in the headings of the columns or rows) e) The headings to all columns and rows must be unambiguous - if it would be too long, then use a short title PLUS a footnote.
Systematic formating is the hard bit. Here you must ask yourself what is the purpose of the table: a) To present the data collected in an orderly manner b) To show distinct patterns in the data c) To summarise the data In most cases, good layout is obtained by first asking what data must be presented adjacent to each other and then asking supplementary questions such as should totals be shown, should percentages or other derived statistics be shown, or would they just clutter up the table.
NEEDS SOME EXAMPLES HERE, probably as graphics to avoid the limitations of web page rendering on different browsers ***

## Graphs and Diagrams

SYLABUS EXTRACT:
pie charts, bar charts frequency polygons, construct and interpret stem-and-leaf diagrams (including ordered and back-to-back stem-and-leaf diagrams), box-and-whisker plots, histograms and cumulative frequency graphs - To be written
# A-level Mathematics/OCR/S2

Please post all questions to A-level Mathematics/Discussion.

## Contents

* Continuous Random Variables
* Normal Distribution
* Poisson Distribution
* Sampling and Hypothesis Tests
# A-level Mathematics/OCR/S1/Discrete Random Variables
## Derived statistics

SYLABUS EXTRACT:
Understand, use and interpret different measures of central tendency (mean, median, mode) and variation (range, interquartile range, standard deviation), e.g. in comparing and contrasting sets of data; Calculation of the mean and standard deviation of a set of data (including grouped data) either from the data itself or from given n totals such as Σx and Σx2, or Σ(x−a) and Σ(x−a)2.

## Discrete random variables

SYLABUS EXTRACT:
(a) construct a probability distribution table relating to a given situation involving a discrete random variable X, and calculate the expectation, variance and standard deviation of X (the notations E(X ) for expectation (also referred to as expected value or mean) and Var(X ) for variance, are included); (b) use formulae for probabilities for the binomial and geometric distributions, and model given situations by one of these, as appropriate (the notations B(n, p) and Geo( p) are included); (c) use tables of cumulative binomial probabilities (or equivalent calculator functions); (d) use formulae for the expectation and variance of the binomial distribution, and for the expectation of the geometric distribution.