{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,1,4]],"date-time":"2023-01-04T05:23:36Z","timestamp":1672809816834},"reference-count":25,"publisher":"Association for Computing Machinery (ACM)","issue":"11","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGPLAN Not."],"published-print":{"date-parts":[[1977,11]]},"abstract":"For more than a decade there has been great confusion over the semantics of the standard \"arithmetic right shift\" instruction. This confusion particularly afflicts authors of computer reference handlings and of optimizing compilers. The fact that shifting is not always equivalent to division has been rediscovered over and over again over the year, but has never been publicized.This paper quotes a large number of sources to prove the widest extent of this confusion, and then proceeds to a short discussion of the problem itself and what to do about it.<\/jats:p>","DOI":"10.1145\/956641.956647","type":"journal-article","created":{"date-parts":[[2005,11,14]],"date-time":"2005-11-14T18:08:27Z","timestamp":1131991707000},"page":"61-69","update-policy":"http:\/\/dx.doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["Arithmetic shifting considered harmful"],"prefix":"10.1145","volume":"12","author":[{"given":"Guy L.","family":"Steele","sequence":"first","affiliation":[{"name":"Massachusetts Institute of Technology, Cambridge, Massachusetts"}]}],"member":"320","published-online":{"date-parts":[[1977,11]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Personal communication Bruce Leverett to William A. Wulf. (Spring 1976) Quoted by permission of Mr. Leverett.]] Personal communication Bruce Leverett to William A. Wulf. (Spring 1976) Quoted by permission of Mr. Leverett.]]"},{"key":"e_1_2_1_2_1","unstructured":"Digital Equipment Corporation. PDP-10 System Reference Manual. Order No. DEC-10-HGAA-D (May 1968) p. 2--31.]] Digital Equipment Corporation. PDP-10 System Reference Manual. Order No. DEC-10-HGAA-D (May 1968) p. 2--31.]]"},{"key":"e_1_2_1_3_1","first-page":"34","author":"Dynamics Research Corporation","year":"1968","journal-title":"General Purpose Processor. H-18A"},{"key":"e_1_2_1_4_1","unstructured":"Digital Equipment Corporation. PDP-11 Handbook. (1969) 35.]] Digital Equipment Corporation. PDP-11 Handbook. (1969) 35.]]"},{"key":"e_1_2_1_5_1","unstructured":"Digital Equipment Corporation. Small Computer Handbook. (1970) 60.]] Digital Equipment Corporation. Small Computer Handbook. (1970) 60.]]"},{"key":"e_1_2_1_6_1","unstructured":"General Automation. The Value of Power. Document Number 89A00064A-A (1972) p. 5--19.]] General Automation. The Value of Power. Document Number 89A00064A-A (1972) p. 5--19.]]"},{"key":"e_1_2_1_7_1","first-page":"62","volume":"20","author":"IBM Corporation","journal-title":"Assembler Language. Form C"},{"key":"e_1_2_1_8_1","volume-title":"John Wiley and Sons","author":"Gries David","year":"1971"},{"key":"e_1_2_1_9_1","volume-title":"Xerox Corporation (Palo Alto","author":"Teitelman Warren","year":"1975"},{"key":"e_1_2_1_10_1","unstructured":"American National Standards Institute. ANS Vocabulary for Information Processing. (1970) Reprinted by IBM Corporation in Data Processing Glossary Form GC20-1699-3 (June 1972).]] American National Standards Institute. ANS Vocabulary for Information Processing. (1970) Reprinted by IBM Corporation in Data Processing Glossary Form GC20-1699-3 (June 1972).]]"},{"key":"e_1_2_1_11_1","unstructured":"IBM Corporation. IBM System\/360 Principles of Operation. Form A22-6821-7 (September 1968) 33.]] IBM Corporation. IBM System\/360 Principles of Operation. Form A22-6821-7 (September 1968) 33.]]"},{"key":"e_1_2_1_12_1","unstructured":"Data General Corporation. How to Use the Nova Computers. (October 1972) p. 2--10.]] Data General Corporation. How to Use the Nova Computers. (October 1972) p. 2--10.]]"},{"key":"e_1_2_1_13_1","first-page":"169","author":"Knuth Donald E","year":"1969","journal-title":"Mass."},{"key":"e_1_2_1_14_1","unstructured":"Digital Equipment Corporation. Programmed Data Processor-1 Handbook. (1963) 18.]] Digital Equipment Corporation. Programmed Data Processor-1 Handbook. (1963) 18.]]"},{"key":"e_1_2_1_15_1","unstructured":"Digital Equipment Corporation. Laboratory Computer Handbook. (1971) 154.]] Digital Equipment Corporation. Laboratory Computer Handbook. (1971) 154.]]"},{"key":"e_1_2_1_16_1","first-page":"1","volume":"22","author":"IBM Corporation","year":"1959","journal-title":"Data Processing System. Form A"},{"key":"e_1_2_1_17_1","unstructured":"IBM Corporation. IBM System\/360 Operating System FORTRAN IV (A Program Logic Manual. Form Y20-0012-0 (1966) 26.]] IBM Corporation. IBM System\/360 Operating System FORTRAN IV (A Program Logic Manual. Form Y20-0012-0 (1966) 26.]]"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/362835.362838"},{"key":"e_1_2_1_19_1","unstructured":"IBM Corporation. IBM System\/360 Operating System FORTRAN IV (II) Compiler Program Logic Manual. Form Y28-6642-3 (November 1968) 26.]] IBM Corporation. IBM System\/360 Operating System FORTRAN IV (II) Compiler Program Logic Manual. Form Y28-6642-3 (November 1968) 26.]]"},{"key":"e_1_2_1_20_1","first-page":"35","volume":"20","author":"IBM Corporation","journal-title":"Assembler Language. Form C"},{"key":"e_1_2_1_21_1","unstructured":"Digital Equipment Corporation. PDP-10 Reference Handbook. Order code ATX (1971) p. 1--49.]] Digital Equipment Corporation. PDP-10 Reference Handbook. Order code ATX (1971) p. 1--49.]]"},{"key":"e_1_2_1_22_1","unstructured":"Digital Equipment Corporation. PDP-8\/e Small Computer Handbook. (1971) p. 7--4.]] Digital Equipment Corporation. PDP-8\/e Small Computer Handbook. (1971) p. 7--4.]]"},{"key":"e_1_2_1_23_1","unstructured":"Digital Equipment Corporation. PDP-11\/45 Processor Handbook. (1973) 53.]] Digital Equipment Corporation. PDP-11\/45 Processor Handbook. (1973) 53.]]"},{"key":"e_1_2_1_24_1","unstructured":"Digital Equipment Corporation. LSI-II PDP-11\/03 Processor Handbook. (1975) p. 4--13.]] Digital Equipment Corporation. LSI-II PDP-11\/03 Processor Handbook. (1975) p. 4--13.]]"},{"key":"e_1_2_1_25_1","unstructured":"Dumpty Humpty. Quoted in Carroll Lewis Through the Looking Glass Chapter VI.]] Dumpty Humpty. Quoted in Carroll Lewis Through the Looking Glass Chapter VI.]]"}],"container-title":["ACM SIGPLAN Notices"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/956641.956647","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,1,3]],"date-time":"2023-01-03T07:50:54Z","timestamp":1672732254000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/956641.956647"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1977,11]]},"references-count":25,"journal-issue":{"issue":"11","published-print":{"date-parts":[[1977,11]]}},"alternative-id":["10.1145\/956641.956647"],"URL":"https:\/\/doi.org\/10.1145\/956641.956647","relation":{},"ISSN":["0362-1340","1558-1160"],"issn-type":[{"value":"0362-1340","type":"print"},{"value":"1558-1160","type":"electronic"}],"subject":[],"published":{"date-parts":[[1977,11]]},"assertion":[{"value":"1977-11-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}