Computer Architecture 3 Addresses and Address Spaces Binary Data

Total Page:16

File Type:pdf, Size:1020Kb

Computer Architecture 3 Addresses and Address Spaces Binary Data Outline 1 Introduction 2 Processing binary data Computer Architecture 3 Addresses and address spaces Binary data S. Coudert R. Pacalet Telecom Paris 2021-09-23 1 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 2 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Section 1 Digital world is binary From voltage to bits Introduction Wires/memory elements carry/store voltages Electric potential difference with reference Two main voltage levels: ground, power supply • Ground (reference, zero volt): 0 / false • Power supply (e.g. ≈ one volt): 1 / true o Intermediate or unstable voltages also exists From bits to numbers Buses: sets of wires Memory data: sets of memory cells Ordered bit sets represent numbers in binary form 3 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 4 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Digital world is binary Unsigned numbers Goals of this lecture From strings to numbers Discover low level and more abstract binary representations Base N: N symbols α, β... associated to values zero, one. Become familiar with them Usually 0, . , 9 for first ten symbols, then A, B. if needed Widely used in computer science Let D0, ..., Dk−1 be k symbols in base N Pi=k−1 i ⇒ Dk−1...D1D0 denotes number i=0 Di × N o Non-ambiguous interpretation requires knowledge of base 5 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 6 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Unsigned numbers Signed numbers Example Two main representations Base ten (digits 0, 1. , 9) Dk−1 Pi=k−2 i Sign and magnitude: (−1) × i=0 Di × 2 342 = 3 × 102 + 4 × 101 + 2 × 100 = 3 × 100 + 4 × 10 + 2 10 Negate ultra-simple: flip sign bit Base eleven (symbols 0, 1. , 9, A) Addition/subtraction not simple (tests, need of both) 2 1 0 34211 = 3 × 1011 + 4 × 1011 + 2 × 1011 Multiplication simple 2 1 k Pi=k−2 i = 3 × 1110 + 4 × 1110 + 2 Two’s complement: −2 × Dk−1 + i=0 Di × 2 = 3 × 12110 + 4 × 1110 + 2 = 40910 Negate not simple: flip all bits (one’s complement), add 1 Addition and subtraction simple (no tests) Base two (bits 0, 1) 02 = 010, 12 = 110, 102 = 210, 112 = Multiplication a bit more complicated 310, 1002 = 410, 1012 = 510... ɳ Decimal value of 3426? 7 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 8 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Exercise: Two’s complement Notations Check your understanding of two’s complement Human readable or close to hardware (binary)? ɳ Prove the two’s complement negate ɳ Simply use base ten and avoid headache? ɳ Imagine the ten’s complement Translating to/from base 2 difficult ɳ What is the set of representable 4-bits integers? 9: 1001, 14: 1110, 237: 11101101 ɳ 4th bit (from right) in 8 bit memory cell containing 97 ? ɳ −310 and 910 on 4 bits 10 ɳ −3 and 9 on 8 bits ɳ Use base two? 10 10 ɳ ɳ How to extend from n bits to n+k bits? 4th bit (from right) in 8 bit memory cell containing 9710? Ë ɳ 01100001 Explain addition and subtraction Not really human-readable 2134: 100001010110, 69497: 10000111101111001 Frequent trade-offs • Hexadecimal, 16 symbols: 0, . , 9, A, B, C, D, E, F (A16 = 1010, ..., F16 = 1510) • Frequent notation (C language): 0xA3F690D • Octal, 8 symbols: 0, . , 7. Notation: 042075 9 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 10 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Hexadecimal and octal Vocabulary MSB/LSB Hexadecimal Octal Most/Least Significant Bit (MSB/LSB) Compact: one symbol = 4 bits Relevant for 3-bits groups, Coefficients of greatest/smallest power of two 8 × 4 = 32 e.g. Unix-like permissions By convention binary numbers usually: Octal 7 5 1 D 8 F 3 7 B 0 9 • Written MSB left, down to LSB right (as humans expect) • 0 1 1 1 Binary 1 1 1 1 0 1 0 0 1 Indexed k-1 (MSB) down to 0 (LSB) Text r w x r - x - - x o This is just a convention, other notations possible 17th bit from left owner group user Examples 7 0 Summary 0 0 1 1 1 1 0 1 Octal 1 7 2 4 high half low half 0 7 Binary 0 0 1 1 1 1 0 1 0 1 0 0 1 0 1 1 1 1 0 0 low half high half Hexadecimal 3 D 4 11 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 12 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Vocabulary Exercise: Number representations Endianness Check your understanding of number representations Memory data at several consecutive addresses ɳ 3010 in base three Big endian: MSB first (at lowest address) ɳ 8710 in bases two, eight, sixteen Little endian: LSB first (at lowest address) ɳ F 30616 in base two Example: 0xEB2EF18A in 8-bits memory ɳ F 30816 in base eight 31 24 23 16 15 8 7 0 bits (LSB: 0) ɳ 01100010101011102 in bases eight, sixteen big EB 2E F1 8A ɳ bit #5 in 8-bits memory cell containing 12310? a a + 1 a + 2 a + 3 addresses 7 0 15 8 23 16 31 24 bits (LSB: 0) little 8A F1 2E EB a a + 1 a + 2 a + 3 addresses 13 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 14 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Section 2 Bitwise boolean operations Instruction sets usually contain bitwise operations Processing binary data x 10111010 y 01011101 not x 01000101 x and y 00011000 x or y 11111111 x xor y 11100111 x shl 2 (shift x left by two positions) 11101000 x shr 2 (shift x right by two positions) 00101110 15 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 16 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Bitwise boolean operations Bitwise boolean operations, example of use Straightforward hardware implementation 8-bits CPU with 8 registers R0...R7 Load <R> <Addr> R ← Mem[Addr] Store <R> <Addr> Mem[Addr] ← R And <Ri> <Rj> <Rk> Ri ← Rj and Rk Andi <Ri> <Rj> <Value> Ri ← Rj and V Or, Ori, Xor, Xori, Not similar to And/Andi 8-pin Input/Output port 8-bit configuration register at address 0xFA01 If bit #i set pin #i output, else input 216 − 1 output pins 0 4 1 5 0xFA01 MSB 0 1 0 0 1 0 1 1 LSB 2 6 3 7 address space input pins 0 17 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 18 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Exercise: Bitwise operations Section 3 Configure pin #5 as output, other pins unmodified Load R1 0xFA01 Addresses and address spaces Ori R2 R1 b00100000 // (0x20) Store R2 0xFA01 Check your understanding of bitwise operations ɳ Configure pin #7 as input ɳ Configure: • pins #2 and #7 as inputs • pin #4 as output • using only one load and one store ɳ Invert all pin states without not instruction? 19 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 20 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Memory mapping Memory mapping 2n − 1 2n − 1 n-bits addresses CPU Read-write effect vary ROM (RO memory) Address space: address from ROM (RO memory) RAM: read and write (RW) 0 to 2n − 1 ROM: read only (RO) RAM 2 (RW memory) CPU communication: RAM 2 (RW memory) Devices interface registers addressed read/write (data • Can be RO, RW or timer (RW registers) timer (RW registers) write-only USB (RW registers) or instructions) USB (RW registers) Memory mapping: hardware • Can store commands, unmapped unmapped map addresses to devices data, status,. • • Can have side-effects RAM 1 (RW memory) Memories RAM 1 (RW memory) • Device registers ⇒ Different programming uses keyboard (RO registers) • ... keyboard (RO registers) 0 Addresses can be unmapped 0 21 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 21 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Example: Leon’s memory mapping Example: Leon’s memory mapping (AHB) Typical Leon-based architecture AHB bus 22 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 23 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Example: Leon’s memory mapping (APB) Remarks on Mapping Components have dedicated subspaces Power of two addresses and sizes Addresses breakdown on AHB bus: • Bits 31. 28: select AHB Slave • Bits 27. 0: offset in subspace Addresses breakdown on APB bus: • Bits 27. 6 or 27. 4: select APB Slave • Bits 5. 0 or 3. 0: offset in subspace Components not always use complete subspace Component address bus can be narrower than system bus APB bus memory mapping 24 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 25 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Addresses and subspaces Addresses and subspaces Address space can split into subspaces Addresses viewed as subspace identifier + offset in subspace Powers of 2 allow simple addresses decoding • MSB: subspace identifier • LSB: offset in subspace Example: 64 addresses (n = 6 address bits) • One subspace: k = 0, 64 cells per subspace • Two subspaces: k = 1, 32 cells per subspace • ... • 64 subspaces: k = 6, single cell per subspace k bits, 2k subspaces n − k bits, 2n−k cells per subspace subspace offset 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 n-bits addresses, 2n cells One layout, several views Subspaces are more logical concepts than physical ones 26 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 27 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Exercise: Simple implementation example Addresses refinement Check your understanding of address subspaces Example: 4-byte ɳ Modify diagram such that device 2 has 64-addresses subspace words addressing device 3 Add LSBs to addresses for device 2 3 wires only, device 1 uses 8 (or less) finer addressing addresses, some addresses are unmapped granularity device 1 Two extra LSBs allow device 0 Chip select wires byte addressing address bus decoder up to 8 targets 011011 011011 0 1 28 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data 29 / 35 2021-09-23 Telecom Paris Computer Architecture — Binary data Address fields Address fields Memory Memory byte subspace offset ..
Recommended publications
  • Pdp11-40.Pdf
    processor handbook digital equipment corporation Copyright© 1972, by Digital Equipment Corporation DEC, PDP, UNIBUS are registered trademarks of Digital Equipment Corporation. ii TABLE OF CONTENTS CHAPTER 1 INTRODUCTION 1·1 1.1 GENERAL ............................................. 1·1 1.2 GENERAL CHARACTERISTICS . 1·2 1.2.1 The UNIBUS ..... 1·2 1.2.2 Central Processor 1·3 1.2.3 Memories ........... 1·5 1.2.4 Floating Point ... 1·5 1.2.5 Memory Management .............................. .. 1·5 1.3 PERIPHERALS/OPTIONS ......................................... 1·5 1.3.1 1/0 Devices .......... .................................. 1·6 1.3.2 Storage Devices ...................................... .. 1·6 1.3.3 Bus Options .............................................. 1·6 1.4 SOFTWARE ..... .... ........................................... ............. 1·6 1.4.1 Paper Tape Software .......................................... 1·7 1.4.2 Disk Operating System Software ........................ 1·7 1.4.3 Higher Level Languages ................................... .. 1·7 1.5 NUMBER SYSTEMS ..................................... 1-7 CHAPTER 2 SYSTEM ARCHITECTURE. 2-1 2.1 SYSTEM DEFINITION .............. 2·1 2.2 UNIBUS ......................................... 2-1 2.2.1 Bidirectional Lines ...... 2-1 2.2.2 Master-Slave Relation .. 2-2 2.2.3 Interlocked Communication 2-2 2.3 CENTRAL PROCESSOR .......... 2-2 2.3.1 General Registers ... 2-3 2.3.2 Processor Status Word ....... 2-4 2.3.3 Stack Limit Register 2-5 2.4 EXTENDED INSTRUCTION SET & FLOATING POINT .. 2-5 2.5 CORE MEMORY . .... 2-6 2.6 AUTOMATIC PRIORITY INTERRUPTS .... 2-7 2.6.1 Using the Interrupts . 2-9 2.6.2 Interrupt Procedure 2-9 2.6.3 Interrupt Servicing ............ .. 2-10 2.7 PROCESSOR TRAPS ............ 2-10 2.7.1 Power Failure ..............
    [Show full text]
  • Generalized Linear Models (Glms)
    San Jos´eState University Math 261A: Regression Theory & Methods Generalized Linear Models (GLMs) Dr. Guangliang Chen This lecture is based on the following textbook sections: • Chapter 13: 13.1 – 13.3 Outline of this presentation: • What is a GLM? • Logistic regression • Poisson regression Generalized Linear Models (GLMs) What is a GLM? In ordinary linear regression, we assume that the response is a linear function of the regressors plus Gaussian noise: 0 2 y = β0 + β1x1 + ··· + βkxk + ∼ N(x β, σ ) | {z } |{z} linear form x0β N(0,σ2) noise The model can be reformulate in terms of • distribution of the response: y | x ∼ N(µ, σ2), and • dependence of the mean on the predictors: µ = E(y | x) = x0β Dr. Guangliang Chen | Mathematics & Statistics, San Jos´e State University3/24 Generalized Linear Models (GLMs) beta=(1,2) 5 4 3 β0 + β1x b y 2 y 1 0 −1 0.0 0.2 0.4 0.6 0.8 1.0 x x Dr. Guangliang Chen | Mathematics & Statistics, San Jos´e State University4/24 Generalized Linear Models (GLMs) Generalized linear models (GLM) extend linear regression by allowing the response variable to have • a general distribution (with mean µ = E(y | x)) and • a mean that depends on the predictors through a link function g: That is, g(µ) = β0x or equivalently, µ = g−1(β0x) Dr. Guangliang Chen | Mathematics & Statistics, San Jos´e State University5/24 Generalized Linear Models (GLMs) In GLM, the response is typically assumed to have a distribution in the exponential family, which is a large class of probability distributions that have pdfs of the form f(x | θ) = a(x)b(θ) exp(c(θ) · T (x)), including • Normal - ordinary linear regression • Bernoulli - Logistic regression, modeling binary data • Binomial - Multinomial logistic regression, modeling general cate- gorical data • Poisson - Poisson regression, modeling count data • Exponential, Gamma - survival analysis Dr.
    [Show full text]
  • The Hexadecimal Number System and Memory Addressing
    C5537_App C_1107_03/16/2005 APPENDIX C The Hexadecimal Number System and Memory Addressing nderstanding the number system and the coding system that computers use to U store data and communicate with each other is fundamental to understanding how computers work. Early attempts to invent an electronic computing device met with disappointing results as long as inventors tried to use the decimal number sys- tem, with the digits 0–9. Then John Atanasoff proposed using a coding system that expressed everything in terms of different sequences of only two numerals: one repre- sented by the presence of a charge and one represented by the absence of a charge. The numbering system that can be supported by the expression of only two numerals is called base 2, or binary; it was invented by Ada Lovelace many years before, using the numerals 0 and 1. Under Atanasoff’s design, all numbers and other characters would be converted to this binary number system, and all storage, comparisons, and arithmetic would be done using it. Even today, this is one of the basic principles of computers. Every character or number entered into a computer is first converted into a series of 0s and 1s. Many coding schemes and techniques have been invented to manipulate these 0s and 1s, called bits for binary digits. The most widespread binary coding scheme for microcomputers, which is recog- nized as the microcomputer standard, is called ASCII (American Standard Code for Information Interchange). (Appendix B lists the binary code for the basic 127- character set.) In ASCII, each character is assigned an 8-bit code called a byte.
    [Show full text]
  • Generalized Linear Models
    CHAPTER 6 Generalized linear models 6.1 Introduction Generalized linear modeling is a framework for statistical analysis that includes linear and logistic regression as special cases. Linear regression directly predicts continuous data y from a linear predictor Xβ = β0 + X1β1 + + Xkβk.Logistic regression predicts Pr(y =1)forbinarydatafromalinearpredictorwithaninverse-··· logit transformation. A generalized linear model involves: 1. A data vector y =(y1,...,yn) 2. Predictors X and coefficients β,formingalinearpredictorXβ 1 3. A link function g,yieldingavectoroftransformeddataˆy = g− (Xβ)thatare used to model the data 4. A data distribution, p(y yˆ) | 5. Possibly other parameters, such as variances, overdispersions, and cutpoints, involved in the predictors, link function, and data distribution. The options in a generalized linear model are the transformation g and the data distribution p. In linear regression,thetransformationistheidentity(thatis,g(u) u)and • the data distribution is normal, with standard deviation σ estimated from≡ data. 1 1 In logistic regression,thetransformationistheinverse-logit,g− (u)=logit− (u) • (see Figure 5.2a on page 80) and the data distribution is defined by the proba- bility for binary data: Pr(y =1)=y ˆ. This chapter discusses several other classes of generalized linear model, which we list here for convenience: The Poisson model (Section 6.2) is used for count data; that is, where each • data point yi can equal 0, 1, 2, ....Theusualtransformationg used here is the logarithmic, so that g(u)=exp(u)transformsacontinuouslinearpredictorXiβ to a positivey ˆi.ThedatadistributionisPoisson. It is usually a good idea to add a parameter to this model to capture overdis- persion,thatis,variationinthedatabeyondwhatwouldbepredictedfromthe Poisson distribution alone.
    [Show full text]
  • Modelling Binary Outcomes
    Modelling Binary Outcomes 01/12/2020 Contents 1 Modelling Binary Outcomes 5 1.1 Cross-tabulation . .5 1.1.1 Measures of Effect . .6 1.1.2 Limitations of Tabulation . .6 1.2 Linear Regression and dichotomous outcomes . .6 1.2.1 Probabilities and Odds . .8 1.3 The Binomial Distribution . .9 1.4 The Logistic Regression Model . 10 1.4.1 Parameter Interpretation . 10 1.5 Logistic Regression in Stata . 11 1.5.1 Using predict after logistic ........................ 13 1.6 Other Possible Models for Proportions . 13 1.6.1 Log-binomial . 14 1.6.2 Other Link Functions . 16 2 Logistic Regression Diagnostics 19 2.1 Goodness of Fit . 19 2.1.1 R2 ........................................ 19 2.1.2 Hosmer-Lemeshow test . 19 2.1.3 ROC Curves . 20 2.2 Assessing Fit of Individual Points . 21 2.3 Problems of separation . 23 3 Logistic Regression Practical 25 3.1 Datasets . 25 3.2 Cross-tabulation and Logistic Regression . 25 3.3 Introducing Continuous Variables . 26 3.4 Goodness of Fit . 27 3.5 Diagnostics . 27 3.6 The CHD Data . 28 3 Contents 4 1 Modelling Binary Outcomes 1.1 Cross-tabulation If we are interested in the association between two binary variables, for example the presence or absence of a given disease and the presence or absence of a given exposure. Then we can simply count the number of subjects with the exposure and the disease; those with the exposure but not the disease, those without the exposure who have the disease and those without the exposure who do not have the disease.
    [Show full text]
  • CS61C : Machine Structures •Remember: “Load from Memory”
    inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Review Lecture 9 – Introduction to MIPS • In MIPS Assembly Language: Data Transfer & Decisions I • Registers replace C variables • One Instruction (simple operation) per line • Simpler is Better, Smaller is Faster Lecturer PSOE Dan Garcia • New Instructions: www.cs.berkeley.edu/~ddgarcia add, addi, sub Future HVD 1 TB disks! ⇒ The future of digital storage • New Registers: (past the DVD, Blu-Ray and HD DVD) C Variables: $s0 - $s7 may be the Holographic Versatile Disc. Temporary Variables: $t0 - $t7 A massive 1 TB on each (200 DVDs)! 1TB www.zdnet.com.au/news/hardware/0,2000061702,39180148,00.htm Zero: $zero CS61C L09 Introduction to MIPS: Data Transfer & Decisions I (1) Garcia © UCB CS61C L09 Introduction to MIPS: Data Transfer & Decisions I (2) Garcia © UCB Assembly Operands: Memory Anatomy: 5 components of any Computer Registers are in the datapath of the • C variables map onto registers; what processor; if operands are in memory, about large data structures like arrays? Personal Computer we must transfer them to the processor to operate on them, and • 1 of 5 components of a computer: then transfer back to memory when done. memory contains such data structures Computer Processor Memory Devices • But MIPS arithmetic instructions only operate on registers, never directly on Control Input (“brain”) memory. Store (to) Datapath • Data transfer instructions transfer data Registers Output between registers and memory: Load (from) • Memory to register • Register to memory These are “data
    [Show full text]
  • Section II Descriptive Statistics for Continuous & Binary Data (Including
    Section II Descriptive Statistics for continuous & binary Data (including survival data) II - Checklist of summary statistics Do you know what all of the following are and what they are for? One variable – continuous data (variables like age, weight, serum levels, IQ, days to relapse ) _ Means (Y) Medians = 50th percentile Mode = most frequently occurring value Quartile – Q1=25th percentile, Q2= 50th percentile, Q3=75th percentile) Percentile Range (max – min) IQR – Interquartile range = Q3 – Q1 SD – standard deviation (most useful when data are Gaussian) (note, for a rough approximation, SD 0.75 IQR, IQR 1.33 SD) Survival curve = life table CDF = Cumulative dist function = 1 – survival curve Hazard rate (death rate) One variable discrete data (diseased yes or no, gender, diagnosis category, alive/dead) Risk = proportion = P = (Odds/(1+Odds)) Odds = P/(1-P) Relation between two (or more) continuous variables (Y vs X) Correlation coefficient (r) Intercept = b0 = value of Y when X is zero Slope = regression coefficient = b, in units of Y/X Multiple regression coefficient (bi) from a regression equation: Y = b0 + b1X1 + b2X2 + … + bkXk + error Relation between two (or more) discrete variables Risk ratio = relative risk = RR and log risk ratio Odds ratio (OR) and log odds ratio Logistic regression coefficient (=log odds ratio) from a logistic regression equation: ln(P/1-P)) = b0 + b1X1 + b2X2 + … + bkXk Relation between continuous outcome and discrete predictor Analysis of variance = comparing means Evaluating medical tests – where the test is positive or negative for a disease In those with disease: Sensitivity = 1 – false negative proportion In those without disease: Specificity = 1- false positive proportion ROC curve – plot of sensitivity versus false positive (1-specificity) – used to find best cutoff value of a continuously valued measurement DESCRIPTIVE STATISTICS A few definitions: Nominal data come as unordered categories such as gender and color.
    [Show full text]
  • Computer Architectures an Overview
    Computer Architectures An Overview PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sat, 25 Feb 2012 22:35:32 UTC Contents Articles Microarchitecture 1 x86 7 PowerPC 23 IBM POWER 33 MIPS architecture 39 SPARC 57 ARM architecture 65 DEC Alpha 80 AlphaStation 92 AlphaServer 95 Very long instruction word 103 Instruction-level parallelism 107 Explicitly parallel instruction computing 108 References Article Sources and Contributors 111 Image Sources, Licenses and Contributors 113 Article Licenses License 114 Microarchitecture 1 Microarchitecture In computer engineering, microarchitecture (sometimes abbreviated to µarch or uarch), also called computer organization, is the way a given instruction set architecture (ISA) is implemented on a processor. A given ISA may be implemented with different microarchitectures.[1] Implementations might vary due to different goals of a given design or due to shifts in technology.[2] Computer architecture is the combination of microarchitecture and instruction set design. Relation to instruction set architecture The ISA is roughly the same as the programming model of a processor as seen by an assembly language programmer or compiler writer. The ISA includes the execution model, processor registers, address and data formats among other things. The Intel Core microarchitecture microarchitecture includes the constituent parts of the processor and how these interconnect and interoperate to implement the ISA. The microarchitecture of a machine is usually represented as (more or less detailed) diagrams that describe the interconnections of the various microarchitectural elements of the machine, which may be everything from single gates and registers, to complete arithmetic logic units (ALU)s and even larger elements.
    [Show full text]
  • Yes, No, Maybe So: Tips and Tricks for Using 0/1 Binary Variables Laurie Hamilton, Healthcare Management Solutions LLC, Columbia MD
    NESUG 2012 Coders' Corner Yes, No, Maybe So: Tips and Tricks for Using 0/1 Binary Variables Laurie Hamilton, Healthcare Management Solutions LLC, Columbia MD ABSTRACT Many SAS® programmers are familiar with the use of 0/1 binary variables in various statistical procedures. But 0/1 variables are also useful in basic database construction, data profiling and QC techniques. By definition, a binary variable is a flavor of categorical variable, an outcome or response measure with only two possible values. In this paper, we will use a sample dataset composed of 0/1 numeric binary variables to demon- strate some tricks and tips for quick Data Profiling and Quality Assurance using basic SAS functions and the MEANS and FREQ procedures. INTRODUCTION Binary variables are a type of categorical variable, specifically those variables which can have only a Yes or No value. We see these types of variables often in Questionnaire type data, which is the example we will use in this paper. We will begin with a brief discussion of the options constructing 0/1 variables, including selection of data type and the implications for the coding of missing values. We will then look at some tips and tricks for using the SAS® functions SUM, NMISS and CAT to create summary variables from multiple binary variables across individual ob- servations and also demonstrate one method for constructing a Pattern variable which combines all the infor- mation in multiple binary variables into one character string. The SAS® procedures PROC MEANS and PROC FREQ are ideally suited to quickly profiling data composed of 0/1 numeric binary variables and we will explore some applications of those procedures using our sample data.
    [Show full text]
  • PA-RISC 1.1 Architecture and Instruction Set Reference Manual
    PA-RISC 1.1 Architecture and Instruction Set Reference Manual HP Part Number: 09740-90039 Printed in U.S.A. February 1994 Third Edition Notice The information contained in this document is subject to change without notice. HEWLETT-PACKARD MAKES NO WARRANTY OF ANY KIND WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Hewlett-Packard shall not be liable for errors contained herein or for incidental or consequential damages in connection with furnishing, performance, or use of this material. Hewlett-Packard assumes no responsibility for the use or reliability of its software on equipment that is not furnished by Hewlett-Packard. This document contains proprietary information which is protected by copyright. All rights are reserved. No part of this document may be photocopied, reproduced, or translated to another language without the prior written consent of Hewlett-Packard Company. Copyright © 1986 – 1994 by HEWLETT-PACKARD COMPANY Printing History The printing date will change when a new edition is printed. The manual part number will change when extensive changes are made. First Edition . November 1990 Second Edition. September 1992 Third Edition . February 1994 Contents Contents . iii Preface. ix 1 Overview . 1-1 Introduction. 1-1 System Features . 1-2 PA-RISC 1.1 Enhancements . 1-2 System Organization . 1-4 2 System Organization . 2-1 Introduction. 2-1 Memory and I/O Addressing . 2-2 Byte Ordering (Big Endian/Little Endian) . 2-3 Levels of PA-RISC. 2-5 Data Types . 2-5 Processing Resources. 2-7 3 Addressing and Access Control.
    [Show full text]
  • Data Representation
    Data Representation Data Representation Chapter Three A major stumbling block many beginners encounter when attempting to learn assembly language is the common use of the binary and hexadecimal numbering systems. Many programmers think that hexadecimal (or hex1) numbers represent absolute proof that God never intended anyone to work in assembly language. While it is true that hexadecimal numbers are a little different from what you may be used to, their advan- tages outweigh their disadvantages by a large margin. Nevertheless, understanding these numbering systems is important because their use simplifies other complex topics including boolean algebra and logic design, signed numeric representation, character codes, and packed data. 3.1 Chapter Overview This chapter discusses several important concepts including the binary and hexadecimal numbering sys- tems, binary data organization (bits, nibbles, bytes, words, and double words), signed and unsigned number- ing systems, arithmetic, logical, shift, and rotate operations on binary values, bit fields and packed data. This is basic material and the remainder of this text depends upon your understanding of these concepts. If you are already familiar with these terms from other courses or study, you should at least skim this material before proceeding to the next chapter. If you are unfamiliar with this material, or only vaguely familiar with it, you should study it carefully before proceeding. All of the material in this chapter is important! Do not skip over any material. In addition to the basic material, this chapter also introduces some new HLA state- ments and HLA Standard Library routines. 3.2 Numbering Systems Most modern computer systems do not represent numeric values using the decimal system.
    [Show full text]
  • Instruction Set Architecture
    Instruction Set Architecture EE3376 1 –Adapted from notes from BYU ECE124 Topics to Cover… l MSP430 ISA l MSP430 Registers, ALU, Memory l Instruction Formats l Addressing Modes l Double Operand Instructions l Single Operand Instructions l Jump Instructions l Emulated Instructions – http://en.wikipedia.org/wiki/TI_MSP430 2 –Adapted from notes from BYU ECE124 Levels of Transformation –Problems –Algorithms – C Instructions –Language (Program) –Programmable –Assembly Language – MSP 430 ISA –Machine (ISA) Architecture –Computer Specific –Microarchitecture –Manufacturer Specific –Circuits –Devices 3 –Adapted from notes from BYU ECE124 Instruction Set Architecture l The computer ISA defines all of the programmer-visible components and operations of the computer – memory organization l address space -- how may locations can be addressed? l addressibility -- how many bits per location? – register set (a place to store a collection of bits) l how many? what size? how are they used? – instruction set l Opcodes (operation selection codes) l data types (data types: byte or word) l addressing modes (coding schemes to access data) l ISA provides all information needed for someone that wants to write a program in machine language (or translate 4 from a high-level language to machine language). –Adapted from notes from BYU ECE124 MSP430 Instruction Set Architecture l MSP430 CPU specifically designed to allow the use of modern programming techniques, such as: – the computation of jump addresses – data processing in tables – use of high-level languages such as C. l 64KB memory space with 16 16-bit registers that reduce fetches to memory. l Implements RISC architecture with 27 instructions and 7 addressing modes.
    [Show full text]