寻址模式

寻址模式(Addressing modes)是中央处理器(CPU)设计中,指令集架构的一部分。各个指令有不同的寻址模式,这些寻址模式决定此架构下的机器语言指令对应的運算數。寻址模式会通过暂存器中的数值或机器指令中的常数来计算运算数的记忆体位址

在计算机程序设计中,寻址模式主要是汇编语言使用者和编译器编写者需要關注的。对于一个相关的概念,请参阅正交指令集,它涉及到任何指令使用任何寻址模式的能力。

警告

注意,各种寻址模式都没有一个被普遍接受的的名称。不同的作者和计算机制造商可以为相同的寻址模式赋予不同的名称,或者为不同的寻址模式赋予相同的名称。

术语“寻址模式”本身也有不同的解释:可以解释为“存储器地址计算方式”,也可以解释为“操作数访问方式”。 在第一种解释下,不从存储器读取或写入存储器的指令(例如“将立即数放入寄存器”)被认为没有“寻址模式”。 第二种解释允许诸如VAX的机器使用立即数模式位来允许寄存器或立即数。 只有第一种解释适用于诸如“加载有效地址”之类的指令。

下面列出的寻址模式分为代码寻址和数据寻址。 大多数计算机体系结构都保持这种区别,但是存在一些允许在(几乎)任何上下文中使用任何寻址模式使用的体系结构。

下面的说明纯粹具有代表性,以说明寻址模式,并不一定反映任何特定计算机使用的助记符。

寻址模式的数量

不同的计算机体系结构在硬件中提供的寻址模式数量上有很大差异。 消除复杂寻址模式并仅使用一个或几个更简单的寻址模式有一些好处,即使它需要一些额外的指令,也许还需要一个额外的寄存器。 如果只有一些简单的寻址模式,那么设计管流水线CPU将变得更为简单。

大多数RISC架构只有大约五种简单的寻址模式,而DECCAX等CISC架构有十几种寻址模式,其中一些非常复杂。 IBM System/360架构只有三种寻址模式,System/390又添加了一些。

当只有少数寻址模式时,所需的特定寻址模式通常在指令代码中编码(例如IBM System/360和后继者,还有大多数RISC)。 但是当存在许多寻址模式时,通常在指令中留出特定字段来指定寻址模式。 DEC VAX允许几乎所有指令有多个存储器操作数,因此保留每个操作数说明符的前几位以指示该特定操作数的寻址模式。 保持寻址模式指定符位与操作码操作位分离产生正交指令集 。

即使在具有许多寻址模式的计算机上,实际程序的测量表明下面列出的简单寻址模式占所有寻址模式的约90%或更多。 由于大多数此类测量基于编译器从高级语言生成的代码,因此这在某种程度上反映了所使用的编译器的局限性。  

对代码的寻址模式

绝对寻址/直接寻址

   +----+------------------------------+
   |jump|           address            |
   +----+------------------------------+

   (有效PC位址 = address)

绝对寻址指令的有效地址是地址参数本身,无需修改。

PC相对寻址

   +----+------------------------------+
   |jump|           offset             |    相对跳转指令
   +----+------------------------------+

   (有效PC位址 = 下一條指令的位址 + offset,offset 可為負數) 

PC对寻址的有效地址是下一条指令地址加上偏移参数。 通常对该偏移是有符号数,以允许跳转到指令之前和之后的代码。

这种寻址方式的跳转指令特别有用,因为常见的跳转指令的目标是是附近的指令(在高级语言中,大多数ifwhile语句相当短)。 实际程序的测量表明,对于大约90%的条件跳转(大约±128或±512字节),8或10位偏移就足够了。

PC相对寻址的另一个优点是代码可以是位置无关的 ,即它可以加载到存储器中的任何地方而无需调整任何地址。

这种寻址模式的某些版本可以是有条件的,这些条件例如两个寄存器之间的关系:“如果reg1 = reg2跳转”、一个寄存器自身:“跳转除非reg1 = 0”或者隐含地状态寄存器中某些位。

寄存器间接寻址

   +-------+-----+
   |jumpVia| reg |
   +-------+-----+

   (有效PC位址 = 'reg'中的值)

对数据的寻址模式

寄存器(直接)寻址

   +------+-----+-----+-----+
   | mul  | reg1| reg2| reg3|      reg1 := reg2 * reg3;
   +------+-----+-----+-----+

这种“寻址模式”没有有效地址,在某些计算机上不被认为是寻址模式。

在此示例中,所有操作数都在寄存器中,结果放在寄存器中。

基址加偏移量寻址,及其变种

有时被称为“偏移寻址”

   +------+-----+-----+----------------+
   | load | reg | base|     offset     |  reg := RAM[base + offset]
   +------+-----+-----+----------------+

   (有效地址 = offset + base 寄存器的内容) 

立即数/字面量寻址

   +------+-----+-----+----------------+
   | add  | reg1| reg2|    constant    |    reg1 := reg2 + constant;
   +------+-----+-----+----------------+

这种“寻址模式”没有有效地址,并且在某些计算机上不被认为是寻址模式。

常量可以是有符号或无符号的。 例如, move.l #$FEEDABBA, D0将十六进制值“FEEDABBA”值移动到寄存器D0中。

操作数的值保存在指令本身中,而不是使用内存中的操作数。

隐含寻址

隐含寻址模式(在X86汇编语言中也称为隐式寻址模式)未明确指定源和/或目标的有效地址。

操作码隐含源(如果有)或目的地有效地址(或有时两者)。

隐含的寻址在较旧的计算机上很常见(直到20世纪70年代中期)。 这样的计算机通常只有一个寄存器,可以在其中执行算术-累加器。 这种累加器机器几乎在每个指令中都隐含地引用了累加器。 例如,操作

a:= b + c;

可以使用序列

load b; add c; store a;

“load”和“add”指令都隐含目的寄存器(累加器); 每个“store”指令都隐含了源寄存器(累加器)。

后来的计算机通常具有多个通用寄存器,它们可以是算术的源寄存器和/或目的寄存器,因此后来的计算机需要一些其他寻址模式来指定算术的源寄存器和目的寄存器。

參考資料

Read other articles:

У этого термина существуют и другие значения, см. 6-й кавалерийский корпус. 6-й гвардейский кавалерийский ордена Суворова корпус (6 гв. кк) Вооружённые силы ВС СССР Вид вооружённых сил сухопутные Род войск (сил) кавалерия Формирование 19.01.1943 года Награды Преемственность Пре�...

Piazza PiaveVeduta della piazza con la torre della ZeccaNomi precedentiPiazza di San Noferi, piazza della Cittadella, piazza della Chiozza, piazza della Zecca Vecchia, piazza la Piave LocalizzazioneStato Italia CittàFirenze Circoscrizionequartiere 1 QuartiereSan Simone Codice postale50122 Informazioni generaliTipopiazza urbana Pavimentazioneasfalto IntitolazionePiave CollegamentiIntersezioniLungarno della Zecca Vecchia, Lungarno Pecori Giraldi, viale della Giovine Italia, via dei Malcon...

Gambaran jiwa dalam Rosarioum Philosphorum Jiwa (berasal dari bahasa Sanskerta : jiva yang artinya benih kehidupan) Dalam berbagai agama dan filsafat, jiwa adalah bagian yang bukan jasmaniah (immaterial) dari seseorang. Biasanya jiwa dipercaya mencakup pikiran dan kepribadian dan sinonim dengan roh, akal, atau awak diri.[1] Di dalam teologi, jiwa dipercaya hidup terus setelah seseorang meninggal, dan sebagian agama mengajarkan bahwa Tuhan adalah pencipta jiwa. Di beberapa budaya,...

Miss World 2017Tanggal18 November 2017TempatSanya City Arena, Sanya, Republik Rakyat Tiongkok[1]Pembawa acaraFernando Allende · Megan Young · Angela Chow · Frankie Cena · Barney Walsh · Steve DouglasPengisi acaraKristian KostovZiziJeffrey LiCeline TamPenyiaranLondon LiveDirecTVRCTI (siaran tunda)Peserta118Finalis/Semifinalis40DebutArmeniaLaosSenegalTidak tampilAntigua dan Barbuda · Belarus · Guinea-Bi...

Експертні методи оцінювання — здійснюються в єдності з іншими методами оцінювання і поділяють на кількісні та якісні. Зміст 1 Рівні експертних оцінювань 1.1 Вправи дилетантів 1.2 Мозковий штурм 1.3 Оцінка експертів 2 Індивідуальні та групові експертні оцінки 2.1 Використан

Dommartin Voormalige gemeente in Frankrijk Situering Regio Hauts-de-France Departement Pas-de-Calais (62) Arrondissement Montreuil Kanton Auxi-le-Château Coördinaten 50° 19′ NB, 01° 55′ OL Portaal    Frankrijk Dommartin is een voormalige gemeente in het Franse departement Pas-de-Calais. Dommartin ligt in het zuiden van het departement, net ten noorden van de grensrivier Authie. Het grondgebied van de gemeente omvatte de Abdij van Dommartin, in het zuidwesten, en vorm...

Mitteldeutsche Fußballmeisterschaft 1924/25 Meister VfB Leipzig (10) ← Mitteldeutsche Fußballmeisterschaft 1923/24 Mitteldeutsche Fußballmeisterschaft 1925/26 → VfB Leipzig 1893 – Mitteldeutscher Fußballmeister 1925 Die Mitteldeutsche Fußballmeisterschaft 1924/25 des Verbandes Mitteldeutscher Ballspiel-Vereine (VBMV) war die 24. Spielzeit der Mitteldeutschen Fußballmeisterschaft. Die diesjährige Meisterschaft wurde abermals mittels zahlreicher regionaler Gauligen ausgetragen, der...

Sporting event delegationTonga at the2012 Summer OlympicsIOC codeTGANOCTonga Sports Association and National Olympic CommitteeWebsitewww.oceaniasport.com/tongain LondonCompetitors3 in 2 sportsFlag bearers Amini Fonua (opening) Joseph Andy Lui (closing)Medals Gold 0 Silver 0 Bronze 0 Total 0 Summer Olympics appearances (overview)19841988199219962000200420082012201620202024 Tonga participated in the 2012 Summer Olympics in London, United Kingdom, which were held from 27 July to 12 August 2...

London borough in United KingdomLondon Borough of MertonLondon borough Coat of armsCouncil logoMerton shown within Greater LondonSovereign stateUnited KingdomConstituent countryEnglandRegionLondonCeremonial countyGreater LondonCreated1 April 1965Admin HQCivic CentreMordenGovernment • TypeLondon borough council • BodyMerton London Borough Council • LeadershipRoss Garrod (Labour) • MayorJoan Henry • London AssemblyLeonie Cooper (L...

Engineering discipline W16 engine of the Bugatti Veyron. Mechanical engineers design engines, power plants, other machines......structures, and vehicles of all sizes. Mechanical engineering is the study of physical machines that may involve force and movement. It is an engineering branch that combines engineering physics and mathematics principles with materials science, to design, analyze, manufacture, and maintain mechanical systems.[1] It is one of the oldest and broadest of the en...

For the 2010 British television drama serial, see The Deep (TV serial). For other uses, see Deep (disambiguation). Australian TV series or program The DeepGenreActionAdventureScience fictionComedy dramaCreated byTom TaylorJames BrouwerWritten byTom TaylorPhilip Dalkin Thomas Duncan-WattDaniel HallLawrence LeungJustine GillmerDirected byTrent CarlsonVoices of Vincent Tong Ashleigh Ball Kathleen Barr Michael Dobson Brian Drummond ComposerNerida Tyson-ChewCountry of originAustraliaCanadaOri...

Koordinat: 6°12′07″S 106°49′23″E / 6.202°S 106.823°E / -6.202; 106.823 Kawasan berorientasi transitDukuh AtasLokasiKebon Melati, Tanah Abang (sisi barat laut) Menteng, Menteng (sisi timur laut)Karet Tengsin, Tanah Abang (sisi barat daya)Jakarta PusatSetiabudi, Setiabudi (sisi tenggara)Jakarta SelatanIndonesiaPemilikPemerintah Provinsi Daerah Khusus Ibukota JakartaPengelolaPT Moda Integrasi Transportasi Jabodetabek (MITJ)Penghubung antarmodaMRT JakartaM MRT ...

For the defunct American magazine, see The Land of Sunshine. 1992 promotional single by Faith No MoreLand of SunshinePromotional single by Faith No Morefrom the album Angel Dust Released1992RecordedJanuary–March 1992[1]StudioCoast Recorders & Brilliant Studios, San Francisco, CaliforniaGenreFunk metal[2]Length3:43LabelSlashComposer(s) Billy Gould Roddy Bottum Lyricist(s) Mike Patton Producer(s)Matt Wallace Land of Sunshine is the opening track to Angel Dust, the fourth s...

Private school in Carbondale, Colorado, United States This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Colorado Rocky Mountain School – news · newspapers · books · scholar · JSTOR (May 2022) (Learn how and when to remove this template message) Colorado Rocky Mountain SchoolAddress500 Holden WayCarbondale, Col...

Turbocharger Cut-away Turbocharger adalah sebuah kompresor sentrifugal yang mendapat daya dari turbin yang sumber tenaganya berasal dari asap gas buang kendaraan. Biasanya digunakan di mesin pembakaran dalam untuk meningkatkan keluaran tenaga dan efisiensi mesin dengan meningkatkan tekanan udara yang memasuki mesin. Kunci keuntungan dari turbocharger adalah mereka menawarkan sebuah peningkatan yang lumayan banyak dalam tenaga mesin hanya dengan sedikit menambah berat. Turbocharger ditemukan o...

Men's team sprint at the 2016 UEC European Track ChampionshipsUEC European Champion jerseyVenueVélodrome de Saint-Quentin-en-Yvelines, YvelinesDate20 OctoberCompetitors37 from 12 nationsMedalists  Maciej BieleckiKamil KuczyńskiMateusz RudykMateusz Lipa   Poland Jack CarlinRyan OwensJoseph Truman   Great Britain Eric EnglerRobert FörstemannJan May   Germany← 20152017 → 2016 UEC European Track Championship...

Charlton Automatic Rifle Автоматическая винтовка Чарльтона ​​в Музее армии Вайору в Новой Зеландии. Тип самозарядная винтовка/Лёгкий пулемёт Страна Новая Зеландия История службы Годы эксплуатации 1942–1945 На вооружении Новая Зеландия Войны и конфликты Вторая мировая война Истори�...

Public high school in Emeryville, California, United StatesEmery High SchoolAddress1100 47th St.Emeryville, California 94608-2908United StatesCoordinates37°50′09″N 122°16′55″W / 37.83583°N 122.28194°W / 37.83583; -122.28194InformationTypePublic high schoolSchool districtEmery Unified School DistrictSuperintendentQuiauna Scott[1]PrincipalEddie Scruggs Smith[2]Teaching staff15.89 (FTE) (2018–19)[3]Grades9–12Enrollment209 (2018–19...

Ukrainian politician and entrepreneur (born 1971) In this name that follows Eastern Slavic naming conventions, the patronymic is Viktorovych and the family name is Kolykhaiev. Ihor KolykhaievІгор Вікторович КолихаєвKolykhaiev in February 2020Mayor of KhersonIncumbentIn office27 November 2020 – 28 June 2022 (de-facto, after going missing)[1][2]Preceded byVolodymyr MykolayenkoSucceeded byHalyna Luhova (as Head of the Kherson City Military Adm...

Territorial authority district in South Island, New ZealandTimaru DistrictTerritorial authority districtTimaru District Council buildingLocation of the Timaru District within the South IslandCountryNew ZealandIslandSouth IslandRegionCanterburyCommunitiesGeraldinePleasant PointTemukaWardsGeraldinePleasant Point-TemukaTimaruFormed1989SeatTimaruGovernment • MayorNigel Bowen • Deputy MayorSteve Wills • Territorial authorityTimaru District CouncilArea[1]...