Instruction Set Reference, A-M

Total Page:16

File Type:pdf, Size:1020Kb

Instruction Set Reference, A-M IA-32 Intel® Architecture Software Developer’s Manual Volume 2A: Instruction Set Reference, A-M NOTE: The IA-32 Intel Architecture Software Developer’s Manual consists of four volumes: Basic Architecture, Order Number 253665; Instruction Set Reference A-M, Order Number 253666; Instruction Set Reference N-Z, Order Number 253667; and the System Programming Guide, Order Number 253668. Refer to all four volumes when evaluating your design needs. Order Number: 253666-017 September 2005 INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS. NO LICENSE, EX- PRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RE- LATING TO SALE AND/OR USE OF INTEL PRODUCTS INCLUDING LIABILITY OR WARRANTIES RELATING TO FIT- NESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. INTEL PRODUCTS ARE NOT INTENDED FOR USE IN MEDICAL, LIFE SAVING, OR LIFE SUSTAINING APPLICATIONS. Intel may make changes to specifications and product descriptions at any time, without notice. Developers must not rely on the absence or characteristics of any features or instructions marked “reserved” or “undefined.” Improper use of reserved or undefined features or instructions may cause unpredictable behavior or failure in developer's software code when running on an Intel processor. Intel reserves these features or instructions for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from their unauthorized use. The Intel® IA-32 architecture processors (e.g., Pentium® 4 and Pentium III processors) may contain design defects or errors known as errata. Current characterized errata are available on request. Hyper-Threading Technology requires a computer system with an Intel® Pentium® 4 processor supporting Hyper-Threading Technology and an HT Technology enabled chipset, BIOS and operating system. Performance will vary depending on the specific hardware and software you use. See http://www.intel.com/techtrends/technologies/hyperthreading.htm for more in- formation including details on which processors support HT Technology. Intel, Intel386, Intel486, Pentium, Intel Xeon, Intel NetBurst, Intel SpeedStep, OverDrive, MMX, Celeron, and Itanium are trademarks or registered trademarks of Intel Corporation and its subsidiaries in the United States and other countries. *Other names and brands may be claimed as the property of others. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order. Copies of documents which have an ordering number and are referenced in this document, or other Intel literature, may be obtained from: Intel Corporation P.O. Box 5937 Denver, CO 80217-9808 or call 1-800-548-4725 or visit Intel’s website at http://www.intel.com Copyright © 1997-2005 Intel Corporation CONTENTS FOR VOLUME 2A AND 2B PAGE CHAPTER 1 ABOUT THIS MANUAL 1.1 IA-32 PROCESSORS COVERED IN THIS MANUAL . 1-1 1.2 OVERVIEW OF VOLUME 2A AND 2B: INSTRUCTION SET REFERENCE. 1-2 1.3 NOTATIONAL CONVENTIONS. 1-2 1.3.1 Bit and Byte Order. .1-2 1.3.2 Reserved Bits and Software Compatibility . .1-3 1.3.3 Instruction Operands . .1-4 1.3.4 Hexadecimal and Binary Numbers . .1-4 1.3.5 Segmented Addressing . .1-4 1.3.6 Exceptions. .1-5 1.3.7 A New Syntax for CPUID, CR, and MSR Values . .1-5 1.4 RELATED LITERATURE . 1-7 CHAPTER 2 INSTRUCTION FORMAT 2.1 INSTRUCTION FORMAT FOR PROTECTED MODE, REAL-ADDRESS MODE, AND VIRTUAL-8086 MODE . 2-1 2.1.1 Instruction Prefixes . .2-2 2.1.2 Opcodes . .2-3 2.1.3 ModR/M and SIB Bytes . .2-4 2.1.4 Displacement and Immediate Bytes . .2-4 2.1.5 Addressing-Mode Encoding of ModR/M and SIB Bytes . .2-5 2.2 IA-32E MODE. 2-9 2.2.1 REX Prefixes . .2-9 2.2.1.1 Encoding. .2-10 2.2.1.2 More on REX Prefix Fields . .2-10 2.2.1.3 Displacement . .2-13 2.2.1.4 Direct Memory-Offset MOVs. .2-14 2.2.1.5 Immediates . .2-14 2.2.1.6 RIP-Relative Addressing. .2-14 2.2.1.7 Default 64-Bit Operand Size. .2-15 2.2.2 Additional Encodings for Control and Debug Registers . .2-15 CHAPTER 3 INSTRUCTION SET REFERENCE, A-M 3.1 INTERPRETING THE INSTRUCTION REFERENCE PAGES . 3-1 3.1.1 Instruction Format . .3-1 3.1.1.1 Opcode Column in the Instruction Summary Table . .3-1 3.1.1.2 Instruction Column in the Opcode Summary Table . .3-3 3.1.1.3 64-bit Mode Column in the Instruction Summary Table . .3-6 3.1.1.4 Compatibility/Legacy Mode Column in the Instruction Summary Table . .3-7 3.1.1.5 Description Column in the Instruction Summary Table. .3-7 3.1.1.6 Description Section. .3-7 3.1.1.7 Operation Section. .3-7 3.1.1.8 Intel® C/C++ Compiler Intrinsics Equivalents Section . .3-11 3.1.1.9 Flags Affected Section . .3-14 3.1.1.10 FPU Flags Affected Section . .3-14 Vol. 2A iii CONTENTS PAGE 3.1.1.11 Protected Mode Exceptions Section. .3-14 3.1.1.12 Real-Address Mode Exceptions Section . .3-15 3.1.1.13 Virtual-8086 Mode Exceptions Section. .3-15 3.1.1.14 Floating-Point Exceptions Section . .3-15 3.1.1.15 SIMD Floating-Point Exceptions Section . .3-16 3.1.1.16 Compatibility Mode Exceptions Section . .3-16 3.1.1.17 64-Bit Mode Exceptions Section. .3-16 3.2 INSTRUCTIONS (A-M) . 3-17 AAA—ASCII Adjust After Addition. .3-18 AAD—ASCII Adjust AX Before Division . .3-20 AAM—ASCII Adjust AX After Multiply . .3-22 AAS—ASCII Adjust AL After Subtraction . .3-24 ADC—Add with Carry . .3-26 ADD—Add. .3-29 ADDPD—Add Packed Double-Precision Floating-Point Values . .3-32 ADDPS—Add Packed Single-Precision Floating-Point Values . .3-35 ADDSD—Add Scalar Double-Precision Floating-Point Values . .3-38 ADDSS—Add Scalar Single-Precision Floating-Point Values. .3-41 ADDSUBPD: Packed Double-FP Add/Subtract. .3-44 ADDSUBPS: Packed Single-FP Add/Subtract . .3-48 AND—Logical AND . .3-52 ANDPD—Bitwise Logical AND of Packed Double-Precision Floating-Point Values. .3-55 ANDPS—Bitwise Logical AND of Packed Single-Precision Floating-Point Values. .3-57 ANDNPD—Bitwise Logical AND NOT of Packed Double-Precision Floating-Point Values. .3-59 ANDNPS—Bitwise Logical AND NOT of Packed Single-Precision Floating-Point Values. .3-61 ARPL—Adjust RPL Field of Segment Selector . .3-63 BOUND—Check Array Index Against Bounds . .3-65 BSF—Bit Scan Forward . .3-67 BSR—Bit Scan Reverse . .3-69 BSWAP—Byte Swap. .3-71 BT—Bit Test . .3-73 BTC—Bit Test and Complement . .3-76 BTR—Bit Test and Reset . .3-79 BTS—Bit Test and Set . .3-82 CALL—Call Procedure . .3-85 CBW/CWDE/CDQE—Convert Byte to Word/Convert Word to Doubleword/Convert Doubleword to Quadword . .3-102 CLC—Clear Carry Flag . .3-103 CLD—Clear Direction Flag . .3-104 CLFLUSH—Flush Cache Line. .3-105 CLI —.
Recommended publications
  • Intel® IA-64 Architecture Software Developer's Manual
    Intel® IA-64 Architecture Software Developer’s Manual Volume 1: IA-64 Application Architecture Revision 1.1 July 2000 Document Number: 245317-002 THIS DOCUMENT IS PROVIDED “AS IS” WITH NO WARRANTIES WHATSOEVER, INCLUDING ANY WARRANTY OF MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL, SPECIFICATION OR SAMPLE. Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. Except as provided in Intel's Terms and Conditions of Sale for such products, Intel assumes no liability whatsoever, and Intel disclaims any express or implied warranty, relating to sale and/or use of Intel products including liability or warranties relating to fitness for a particular purpose, merchantability, or infringement of any patent, copyright or other intellectual property right. Intel products are not intended for use in medical, life saving, or life sustaining applications. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. Intel® IA-64 processors may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Copies of documents which have an order number and are referenced in this document, or other Intel literature, may be obtained by calling 1-800- 548-4725, or by visiting Intel’s website at http://developer.intel.com/design/litcentr.
    [Show full text]
  • DISSERTATION Concepts for Scientific Computing
    DISSERTATION Concepts for Scientific Computing ausgefuhrt¨ zum Zwecke der Erlangung des akademischen Grades eines Doktors der technischen Wissenschaften eingereicht an der Technischen Universitat¨ Wien Fakultat¨ fur¨ Elektrotechnik und Informationstechnik von RENE´ HEINZL Rosensteingasse 7-9/2 A-1160 Wien, Osterreich¨ Matr. Nr. 9826031 geboren am 6. September 1977, Wien Wien, im Juli 2007 Abstract Scientific computing has traditionally been concerned with numerical issues such as the convergence of discrete approximations to partial differential equations, the stability of integration methods for time- dependent systems, and the computational efficiency of software implementations of these numerical methods. While computer performance is steadily increasing the additional complexity of these simulation models easily outgrows this gain in computational power. It is therefore of utmost importance to employ the latest techniques of software development to obtain high performance and thereby ensure adequate simulation times even for complex problems. As a consequence the development of high performance simulation software is quite challenging. Originating in the field of technology computer aided design as an important and complex area of sci- entific computing, this work is motivated by the fact, that different concepts were developed during the last decades for the field of scientific computing. The great diversity of physical phenomena present in semiconductor devices themselves and in the processes involved in their manufacture make the field of TCAD extremely challenging. Each of the phenomena can be described by differential equations of vary- ing complexity. The development of several different discretisation schemes has been necessary in order to best model the underlying physics and to accommodate the mathematical peculiarities of each of these equations while transferring them to the discrete world of digital computing.
    [Show full text]
  • HAIL: an Algorithm for the Hardware Accelerated Identification of Languages, Master's Thesis, May 2006
    Washington University in St. Louis Washington University Open Scholarship All Computer Science and Engineering Research Computer Science and Engineering Report Number: WUCSE-2006-36 2006-01-01 HAIL: An Algorithm for the Hardware Accelerated Identification of Languages, Master's Thesis, May 2006 Charles M. Kastner This thesis examines in detail the Hardware-Accelerated Identification of Languages (HAIL) project. The goal of HAIL is to provide an accurate means to identify the language and encoding used in streaming content, such as documents passed over a high-speed network. HAIL has been implemented on the Field-programmable Port eXtender (FPX), an open hardware platform developed at Washington University in St. Louis. HAIL can accurately identify the primary languages and encodings used in text at rates much higher than what can be achieved by software algorithms running on microprocessors. Follow this and additional works at: https://openscholarship.wustl.edu/cse_research Part of the Computer Engineering Commons, and the Computer Sciences Commons Recommended Citation Kastner, Charles M., " HAIL: An Algorithm for the Hardware Accelerated Identification of Languages, Master's Thesis, May 2006" Report Number: WUCSE-2006-36 (2006). All Computer Science and Engineering Research. https://openscholarship.wustl.edu/cse_research/187 Department of Computer Science & Engineering - Washington University in St. Louis Campus Box 1045 - St. Louis, MO - 63130 - ph: (314) 935-6160. Department of Computer Science & Engineering 2006-36 HAIL: An Algorithm for the Hardware Accelerated Identification of Languages, Master's Thesis, May 2006 Authors: Charles M. Kastner Corresponding Author: [email protected] Web Page: http://www.arl.wustl.edu/projects/fpx/reconfig.htm Abstract: This thesis examines in detail the Hardware-Accelerated Identification of Languages (HAIL) project.
    [Show full text]
  • Appendix D an Alternative to RISC: the Intel 80X86
    D.1 Introduction D-2 D.2 80x86 Registers and Data Addressing Modes D-3 D.3 80x86 Integer Operations D-6 D.4 80x86 Floating-Point Operations D-10 D.5 80x86 Instruction Encoding D-12 D.6 Putting It All Together: Measurements of Instruction Set Usage D-14 D.7 Concluding Remarks D-20 D.8 Historical Perspective and References D-21 D An Alternative to RISC: The Intel 80x86 The x86 isn’t all that complex—it just doesn’t make a lot of sense. Mike Johnson Leader of 80x86 Design at AMD, Microprocessor Report (1994) © 2003 Elsevier Science (USA). All rights reserved. D-2 I Appendix D An Alternative to RISC: The Intel 80x86 D.1 Introduction MIPS was the vision of a single architect. The pieces of this architecture fit nicely together and the whole architecture can be described succinctly. Such is not the case of the 80x86: It is the product of several independent groups who evolved the architecture over 20 years, adding new features to the original instruction set as you might add clothing to a packed bag. Here are important 80x86 milestones: I 1978—The Intel 8086 architecture was announced as an assembly language– compatible extension of the then-successful Intel 8080, an 8-bit microproces- sor. The 8086 is a 16-bit architecture, with all internal registers 16 bits wide. Whereas the 8080 was a straightforward accumulator machine, the 8086 extended the architecture with additional registers. Because nearly every reg- ister has a dedicated use, the 8086 falls somewhere between an accumulator machine and a general-purpose register machine, and can fairly be called an extended accumulator machine.
    [Show full text]
  • Management of Data Elements in Information Processing
    PB-249-530 MANAGEMENT OF DATA ELEMENTS IN INFORMATION PROCESSING U.S. DEPARTMENT OF COMMERCE / National Bureau of Standards SECOND NATIONAL SYMPOSIUM NATIONAL BUREAU OF STANDARDS GAITHERSBURG, MARYLAND 1975 OCTOBER 23-24 Available by purchase from the National Technical Information Service, 5285 Port Royal Road, Springfield, Va. 221 Price: $9.25 hardcopy; $2.25 microfiche. National Technical Information Service U. S. DEPARTMENT OF COMMERCE PB-249-530 Management of Data Elements in Information Processing Proceedings of a Second Symposium Sponsored by the American National Standards Institute and by The National Bureau of Standards 1975 October 23-24 NBS, Gaithersburg, Maryland Hazel E. McEwen, Editor Institute for Computer Sciences and Technology National Bureau of Standards Washington, D.C. 20234 U.S. DEPARTMENT OF COMMERCE, Elliot L. Richardson, Secrefary NATIONAL BUREAU OF STANDARDS, Ernest Ambler, Acfing Direc/or Table of Contents Page Introduction to the Program of the Second National Symposium on The Management of Data Elements in Information Processing ix David V. Savidge, Program Chairman On-Line Tactical Data Inputting: Research in Operator Training and Performance 1 Irving Alderman, Ph.D. "Turning the Corner" on MIS, A Proposed Program of Data Standards in Post-Secondary Education 9 Donald R. Arnold, Ph.D. ASCII - The Data Alphabet That Will Endure 17 Robert W. Bemer Techniques in Developing Standard Procedures for Data Editing 23 George W. Covill An Adaptive File Management Systems 45 Dennis L. Dance and Udo W. Pooch (Given by Dance) A Focus on the Role of the Data Manager 57 Ruth M, Davis, Ph.D. A Proposed Standard Routine for Generating Proposed Standard Check Characters 61 Paul -Andre Desjardins Methodology for Development of Standard Data Elements within Multiple Public Agencies 69 L.
    [Show full text]
  • Programmable Digital Microcircuits - a Survey with Examples of Use
    - 237 - PROGRAMMABLE DIGITAL MICROCIRCUITS - A SURVEY WITH EXAMPLES OF USE C. Verkerk CERN, Geneva, Switzerland 1. Introduction For most readers the title of these lecture notes will evoke microprocessors. The fixed instruction set microprocessors are however not the only programmable digital mi• crocircuits and, although a number of pages will be dedicated to them, the aim of these notes is also to draw attention to other useful microcircuits. A complete survey of programmable circuits would fill several books and a selection had therefore to be made. The choice has rather been to treat a variety of devices than to give an in- depth treatment of a particular circuit. The selected devices have all found useful ap• plications in high-energy physics, or hold promise for future use. The microprocessor is very young : just over eleven years. An advertisement, an• nouncing a new era of integrated electronics, and which appeared in the November 15, 1971 issue of Electronics News, is generally considered its birth-certificate. The adver• tisement was for the Intel 4004 and its three support chips. The history leading to this announcement merits to be recalled. Intel, then a very young company, was working on the design of a chip-set for a high-performance calculator, for and in collaboration with a Japanese firm, Busicom. One of the Intel engineers found the Busicom design of 9 different chips too complicated and tried to find a more general and programmable solu• tion. His design, the 4004 microprocessor, was finally adapted by Busicom, and after further négociation, Intel acquired marketing rights for its new invention.
    [Show full text]
  • APPLICATION NOTE Ap·113
    APPLICATION Ap·113 NOTE February 1981 Intel Corporation makes no warranty for the use of its products and assumes no responsibility for any errors which may appear in this document nor does it make a commitment to update the information contained herein. Intel software products are copyrighted by and shall remain the property of Intel Corporation. Use, duplication or disclosure is subjectto restrictions stated in Intel's software license, or as defined in ASPR 7-104.9 (a) (9). Intel Corporation a!=;sumes no resDonsibilitv for the use of anv circuitry other than circuitry embodied in an Intel product. No other circuit patent licenses are implied. No part of this document may be copied or reproduced in any form or by any means without the prior written consent of Intel Corporation. The following are trademarks of Intel Corporation and may only be used to identify Intel products: BXP Intelevision MULTIBUS* CREDIT Intellec MULTIMODULE i iSBC Plug-A-Bubble ICE iSBX PROMPT ICS Library Manager Promware im MCS RMX Insite Megachassis UPI Intel Micromap ~Scope System 2000 and the combinations of ICE, iCS, iSBC, MCS or RMX and a numerical suffix. MDS is an ordering code only and is not used as a product name or trademark. MDS® is a registered trademark of Mohawk Data Sciences Corporation. *MULTIBUS is a patented Intel bus. Additional copies of this manual or other Intel literature may be obtained from: Intel Corporation Literature Department SV3-3 3065 Bowers Avenue Santa Clara, CA 95051 © INTEL CORPORATION, 1981 AFN-013008-1 Ap·113 Getting Started With Contents the Numeric Data INTRODUCTION Processor iAPX 86,88 Base .............................
    [Show full text]
  • Introduction to Cpu
    microprocessors and microcontrollers - sadri 1 INTRODUCTION TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers - sadri 2 Agenda • Review of the first session • A tour of silicon world! • Basic definition of CPU • Von Neumann Architecture • Example: Basic ARM7 Architecture • A brief detailed explanation of ARM7 Architecture • Hardvard Architecture • Example: TMS320C25 DSP microprocessors and microcontrollers - sadri 3 Agenda (2) • History of CPUs • 4004 • TMS1000 • 8080 • Z80 • Am2901 • 8051 • PIC16 microprocessors and microcontrollers - sadri 4 Von Neumann Architecture • Same Memory • Program • Data • Single Bus microprocessors and microcontrollers - sadri 5 Sample : ARM7T CPU microprocessors and microcontrollers - sadri 6 Harvard Architecture • Separate memories for program and data microprocessors and microcontrollers - sadri 7 TMS320C25 DSP microprocessors and microcontrollers - sadri 8 Silicon Market Revenue Rank Rank Country of 2009/2008 Company (million Market share 2009 2008 origin changes $ USD) Intel 11 USA 32 410 -4.0% 14.1% Corporation Samsung 22 South Korea 17 496 +3.5% 7.6% Electronics Toshiba 33Semiconduc Japan 10 319 -6.9% 4.5% tors Texas 44 USA 9 617 -12.6% 4.2% Instruments STMicroelec 55 FranceItaly 8 510 -17.6% 3.7% tronics 68Qualcomm USA 6 409 -1.1% 2.8% 79Hynix South Korea 6 246 +3.7% 2.7% 812AMD USA 5 207 -4.6% 2.3% Renesas 96 Japan 5 153 -26.6% 2.2% Technology 10 7 Sony Japan 4 468 -35.7% 1.9% microprocessors and microcontrollers
    [Show full text]
  • Numerical Computation Guide
    Numerical Computation Guide Sun Microsystems, Inc. 901 San Antonio Road Palo Alto, CA 94303 U.S.A. 650-960-1300 Part No. 806-3568-10 May 2000, Revision A Send comments about this document to: [email protected] Copyright © 2000 Sun Microsystems, Inc., 901 San Antonio Road • Palo Alto, CA 94303-4900 USA. All rights reserved. This product or document is distributed under licenses restricting its use, copying, distribution, and decompilation. No part of this product or document may be reproduced in any form by any means without prior written authorization of Sun and its licensors, if any. Third-party software, including font technology, is copyrighted and licensed from Sun suppliers. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and other countries, exclusively licensed through X/Open Company, Ltd. For Netscape™, Netscape Navigator™, and the Netscape Communications Corporation logo™, the following notice applies: Copyright 1995 Netscape Communications Corporation. All rights reserved. Sun, Sun Microsystems, the Sun logo, docs.sun.com, AnswerBook2, Solaris, SunOS, JavaScript, SunExpress, Sun WorkShop, Sun WorkShop Professional, Sun Performance Library, Sun Performance WorkShop, Sun Visual WorkShop, and Forte are trademarks, registered trademarks, or service marks of Sun Microsystems, Inc. in the U.S. and other countries. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon an architecture developed by Sun Microsystems, Inc. The OPEN LOOK and Sun™ Graphical User Interface was developed by Sun Microsystems, Inc.
    [Show full text]
  • Intel Architecture Software Developer's Manual
    Intel Architecture Software Developer’s Manual Volume 2: Instruction Set Reference NOTE: The Intel Architecture Software Developer’s Manual consists of three volumes: Basic Architecture, Order Number 243190; Instruction Set Reference, Order Number 243191; and the System Programming Guide, Order Number 243192. Please refer to all three volumes when evaluating your design needs. 1999 Information in this document is provided in connection with Intel products. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. Except as provided in Intel's Terms and Conditions of Sale for such products, Intel assumes no liability whatsoever, and Intel disclaims any express or implied warranty, relating to sale and/or use of Intel products including liability or warranties relating to fitness for a particular purpose, merchantability, or infringement of any patent, copyright or other intellectual property right. Intel products are not intended for use in medical, life saving, or life sustaining applications. Intel may make changes to specifications and product descriptions at any time, without notice. Designers must not rely on the absence or characteristics of any features or instructions marked “reserved” or “undefined.” Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. Intel’s Intel Architecture processors (e.g., Pentium®, Pentium® II, Pentium® III, and Pentium® Pro processors) may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. Contact your local Intel sales office or your distributor to obtain the latest specifications and before placing your product order.
    [Show full text]
  • The Design of TEX and METAFONT: a Retrospective
    The design of TEX and METAFONT: A retrospective Nelson H. F. Beebe University of Utah Department of Mathematics, 110 LCB 155 S 1400 E RM 233 Salt Lake City, UT 84112-0090 USA WWW URL: http://www.math.utah.edu/~beebe Telephone: +1 801 581 5254 FAX: +1 801 581 4148 Internet: [email protected], [email protected], [email protected] Abstract This article looks back at the design of TEX and METAFONT, and analyzes how they were affected by architectures, operating systems, programming languages, and resource limits of the computing world at the time of their creation by a remarkable programmer and human being, Donald E. Knuth. This paper is dedicated to him, with deep gratitude for the continued inspiration and learning that I’ve received from his software, his scientific writing, and our occasional personal encounters over the last 25+ years. 1 Introduction 501 arrived, he was so disappointed that he wrote [68, 2 Computers and people 502 p. 5]: 3TheDECPDP-10 502 I didn’t know what to do. I had spent 15 4 Resource limits 505 years writing those books, but if they were 5 Choosing a programming language 506 going to look awful I didn’t want to write 6 Switching programming languages 510 any more. How could I be proud of such a 7 Switching languages, again 513 product? A few months later, he learned of some new de- 8 TEX’s progeny 514 vices that used digital techniques to create letter 9 METAFONT’s progeny 514 images, and the close connection to the 0s and 1s 10 Wrapping up 515 of computer science led him to think about how 11 Bibliography 515 he himself might design systems to place characters −−∗−− on a page, and draw the individual characters as a matrix of black and white dots.
    [Show full text]
  • SRI ARC Journal : 32929-32972
    JMB 8-JUL-75 13:06 32929 1 This is an impromptu message to demonstrate Sendmail items. 1 JMB 8-JUL-75 13:06 32929 (J32929) 8-JUL-75 13:06;;;; Title: Author(s): Jeanne M. Bec</JMB; Distribution: /PAw2( [ InFQ-ONLY ] ) ; Sub-Collections: SRI-APC; Cleric JMB; RA3Y 8-JUL-75 13:09 32930 archiving commands In NLS too 1 ThanKs for the note on archiving# Glenn. I wasn't aware of archiving processes in Ienex that prevent archiving. As it turns out# all these commands are also available in NLS. To see them type Archive File filename# then hit the Control-u, You will be prompted for an option. If you hit the ? then# a list will be presented, 1 1 RA3Y 8-JUL-75 13509 32930 archiving commands in NLS too CJ32930) 8-JUL-75 13:09;?;; Title; Author(s): Raymond P. Panko/RA 3 Y ; Distribution; /G A S2 ( [ INFO-ONLY 1 ) : Sub-collections: SRI-ABC; Clerk: RA3Y; JMB 8-JUL-75 13J10 32931 menu 1 MENU 1 la APPETIZERS la lal ANTIPASTO lal la2 ASPARAGUS V IN AIGRETTE 1a2 la3 ESCARGOT la3 la4 BROILED MUSHROOMS 1a4 lb SOUPS lb Ibl cold soups Ibl Ibla V ICHiSUISSE Ibla lblb BORSCHT lblb lblc GAZpACHO lblc Ibid AVOCADO Ibid 1b2 HOT SOUPS lb2 lb2a BORSCHT 1b2a 1b2a1 WITH SOUR CREAM lb2a1 lb2b CHICKEN lb2b lb2b1 WITH DUMPLINGS lb2b1 lb2c SPINACH lb2c lc SALADS lc lcl CAESAR lcl 1c2 GREEK 1c2 lc2a WITH ANCHOVIES lc2a 1C3 TOSSED GREEN 1c3 Id ENTREES Id 1d 1 FISH AND SHELLFISH 1d 1 1 JMB 8-JUL-75 1 3: 10 32931 menu Id la SOLE 1dl a 1d lb SCALLOPS ldlb ldlbl BROILED ldlbl 1d1 b 2 SAUTEED 1d 1 b2 Idle LOBSTER Idle ldlel I LB.
    [Show full text]