Адресация памяти

Адресация — осуществление ссылки (обращение) к устройству или элементу данных по его адресу[1]; установление соответствия между множеством однотипных объектов и множеством их адресов; метод идентификации местоположения объекта[2].

Методы адресации[2]

Адресное пространство

  • Простая (англ. flat addressing) — указание объекта с помощью идентификатора или числа, не имеющего внутренней структуры.
  • Расширенная (англ. extended addressing) — доступ к запоминающему устройству с адресным пространством, бо́льшим диапазоном адресов, предусмотренного форматом команды.
  • Виртуальная (англ. virtual addressing) — принцип, при котором каждая программа рассматривается как ограниченное непрерывное поле логической памяти, а адреса этого поля — как виртуальные адреса.
  • Ассоциативная (англ. associative addressing) — точное местоположение данных не указывается, а задаётся значение определённого поля данных, идентифицирующее эти данные (см.: Ассоциативная память).

Исполнение программ

  • Статическая (англ. static addressing) — соответствие между виртуальными и физическими адресами устанавливается до начала и не меняется в ходе выполнения программы.
  • Динамическая (англ. dynamic addressing) — преобразование виртуальных адресов в физические осуществляется в процессе выполнения программы. Программа при этом не зависит от места размещения в физической памяти и может перемещаться в ней в процессе выполнения.

Кодирование адресов

Вычисление адресов

  • Непосредственная, прямая (англ. immediate (direct) addressing) — адресная часть команды содержит непосредственный (прямой) адрес; адресация путём указания прямых адресов.
  • Косвенная (англ. indirect addressing) — адресная часть команды содержит косвенный адрес; адресация посредством косвенных адресов.
  • Регистровая (англ. register addressing) — задание адресов операндов в регистрах.
  • Базисная (англ. basic addressing) — вычисление адресов в машинных командах относительно содержимого регистра, указанного в качестве базового.
  • Базовая (англ. base-displacement addressing) — схема вычисления исполнительного адреса, при которой этот адрес является суммой базового адреса и смещения.
  • Относительная (англ. relative addressing) — адресная часть команды содержит относительный адрес.
  • Индексная (англ. indexed addressing) — формирование исполнительного адреса осуществляется путём добавления к базовому адресу содержимого индексного регистра.
    • Автодекрементная, автоинкрементная (англ. autodecremental, autoincremental addressing) — содержимое регистра индекса изменяется (уменьшается или увеличивается) на некоторое число.
    • Постдекрементная, предекрементная, постинкрементная, преинкрементная — автодекрементные и автоинкрементные адресации, при которых уменьшение/увеличение происходит после/до выборки операнда.
  • Стековая (англ. stack addressing) — адресация посредством регистра — указателя стека.
  • Самоопределяющаяся (англ. self-relative addressing) — адресная часть команды содержит самоопределяющийся адрес.
    • Адресация относительно счётчика команд (англ. program counter relative addressing) — адреса в команде указываются в виде разности исполнительных адресов и адреса исполняемой команды. Такой способ адресации не требует настройки (см. также: Позиционно-независимый код).

Способы адресации

Подразумеваемый операнд

В команде может не содержаться явных указаний об операнде; в этом случае операнд подразумевается и фактически задается кодом операции команды.

Подразумеваемый адрес

В команде может не содержаться явных указаний об адресе участвующего в операции операнда или адреса, по которому должен быть размещен результат операции, но этот адрес подразумевается.

Непосредственная адресация

В команде содержится не адрес операнда, а непосредственно сам операнд. При непосредственной адресации не требуется обращения к памяти для выборки операнда и ячейки памяти для его хранения. Это способствует уменьшению времени выполнения программы и занимаемого ею объёма памяти. Непосредственная адресация удобна для хранения различного рода констант.

Прямая адресация

Адрес указывается непосредственно в виде некоторого значения, все ячейки располагаются на одной странице. Преимущество этого способа в том, что он самый простой, а недостаток — в том, что разрядность регистров общего назначения процессора должна быть не меньше разрядности шины адреса процессора.

Условная схема прямой адресации памяти

Относительная (базовая) адресация

При этом способе адресации исполнительный адрес определяется как сумма адресного кода команды и базового адреса, как правило хранящегося в специальном регистре — регистре базы.

Относительная адресация позволяет при меньшей длине адресного кода команды обеспечить доступ к любой ячейке памяти. Для этого число разрядов в базовом регистре выбирают таким, чтобы можно было адресовать любую ячейку оперативной памяти, а адресный код команды используют для представления лишь сравнительно короткого «смещения». Смещение определяет положение операнда относительно начала массива, задаваемого базовым адресом.

Укороченная адресация

В адресном поле командного слова содержатся только младшие разряды адресуемой ячейки. Дополнительный указательный регистр.

  • Адресация с регистром страницы является примером сокращённой адресации. При этом вся память разбивается на блоки-страницы. Размер страницы диктуется длиной адресного поля.

Регистровая адресация

Регистровая адресация является частным случаем укороченной. Применяется, когда промежуточные результаты хранятся в одном из рабочих регистров центрального процессора. Поскольку регистров значительно меньше чем ячеек памяти, то небольшого адресного поля может хватить для адресации.

Косвенная адресация

Впервые косвенная адресация 2-го ранга (указатели) была использована при программировании на МЭСМ[3]. Добавление к команде со значением адреса операнда "0" значения ячейки памяти, в котором находится адрес требуемого операнда, позволило использовать эти ячейки памяти в качестве значений адресов, т.е. указателей на адреса операндов.

Косвенная адресация высших рангов впервые была введена в Адресном языки программирования (1955г.)[4][5] и апаратно реализована в компьютере "Киев"[6]. В системе команд компьютера "Киев" есть Ф-операция, которая позволяет уменьшать ранг адреса, т.е. выполнять "штрих-операцию" или разыменовывать указатель, а групповые операции модификации адресов[5][6] позволяли аппаратно выполнять многократное разыменование указателей (Multiple indirection of Pointers).

Адресный код команды в этом случае указывает не адрес с данными, а адрес ячейки памяти, в которой находится адрес операнда или команды. Это и есть адресация 2-го ранга или указатели. Косвенная адресация широко используется в малых и микроЭВМ, имеющих короткое машинное слово, для преодоления ограничений короткого формата команды (совместно используются регистровая и косвенная адресация).

Адресация слов переменной длины

Эффективность вычислительных систем, предназначенных для обработки данных, повышается, если имеется возможность выполнять операции со словами переменной длины. В этом случае в машине может быть предусмотрена адресация слов переменной длины, которая обычно реализуется путём указания в команде местоположения в памяти начала слова и его длины.

Стековая адресация

Стековая память, реализующая безадресное задание операндов, особенно широко используется в микропроцессорах и Мини-ЭВМ.

Автоинкрементная и автодекрементная адресации

Поскольку регистровая косвенная адресация требует предварительной загрузки регистра косвенным адресом из оперативной памяти, что связано с потерей времени, такой тип адресации особенно эффективен при обработке массива данных, если имеется механизм автоматического приращения или уменьшения содержимого регистра при каждом обращении к нему. Такой механизм называется соответственно автоинкрементной и автодекрементной адресацией. В этом случае достаточно один раз загрузить в регистр адрес первого обрабатываемого элемента массива, а затем при каждом обращении к регистру в нём будет формироваться адрес следующего элемента массива.

При автоинкрементной адресации сначала содержимое регистра используется как адрес операнда, а затем получает приращение, равное числу байт в элементе массива. При автодекрементной адресации сначала содержимое указанного в команде регистра уменьшается на число байт в элементе массива, а затем используется как адрес операнда.

Автоинкрементная и автодекрементная адресации могут рассматриваться как упрощенный вариант индексации — весьма важного механизма преобразования адресных частей команд и организации вычислительных циклов, поэтому их часто называют автоиндексацией.

Индексная адресация

Для реализуемых на ЭВМ методов решения математических задач и обработки данных характерна цикличность вычислительных процессов, когда одни и те же процедуры выполняются над различными операндами, упорядоченно расположенными в памяти. Поскольку операнды, обрабатываемые при повторениях цикла, имеют разные адреса, без использования индексации требовалось бы для каждого повторения составлять свою последовательность команд, отличающихся адресными частями.

Программирование циклов существенно упрощается, если после каждого выполнения цикла обеспечено автоматическое изменение в соответствующих командах их адресных частей согласно расположению в памяти обрабатываемых операндов. Такой процесс называется модификацией команд, и основан на возможности выполнения над кодами команд арифметических и логических операций.

См. также

Примечания

  1. СТ ИСО 2382/7-77 // Вычислительная техника. Терминология: Справочное пособие. Выпуск 1 / Рецензент канд. техн. наук Ю. П. Селиванов. — М.: Издательство стандартов, 1989. — 168 с. — 55 000 экз. — ISBN 5-7050-0155-X.
  2. 1 2 Першиков В. И., Савинков В. М. Толковый словарь по информатике / Рецензенты: канд. физ.-мат. наук А. С. Марков и д-р физ.-мат. наук И. В. Поттосин. — М.: Финансы и статистика, 1991. — 543 с. — 50 000 экз. — ISBN 5-279-00367-0.
  3. Лебедев, С.А. Малая электронная счетная машина : [рус.] / С.А. Лебедев, Л.Н. Дашевський, Е.А. Шкабара. — Москва : Академия наук СССР, 1952. — P. 162. Архивная копия от 23 июля 2021 на Wayback Machine Источник. Дата обращения: 23 июля 2021. Архивировано 23 июля 2021 года.
  4. Alvaro Videla. Kateryna L. Yushchenko — Inventor of Pointers (англ.). Medium (8 декабря 2018). Дата обращения: 23 июля 2021. Архивировано 23 сентября 2020 года.
  5. 1 2 Ющенко, Е.Л. Адресное программирование : [рус.]. — Киев : Гос. издательство технической литературы, УРСР, 1963. — P. 288.
  6. 1 2 Глушков, В. М. Вычислительная машина «Киев»: математическое описание. : [рус.] / В. М. Глушков, Е. Л. Ющенко. — Техн. лит., 1962. — 183 с..

Литература

  • Ю. М. Казаринов. Микропроцессоры в радиотехнических системах.

Read other articles:

Deja VuSampul album Deja VuAlbum mini karya SS501Dirilis13 Maret 2008 (2008-03-13)[1]GenreK-pop, R&B, DanceDurasi10:25BahasaKoreaLabelDSP MediaKronologi SS501 Snow Prince(2005)Snow Prince2005 Deja Vu(2008) Find(2008)Find2008 Video musikDeja Vu on YouTube A Song Calling For You on YouTube Templat:Korean membutuhkan parameter |hangul=. Deja Vu (데자뷰)[2] adalah album mini ketiga boy band asal Korea Selatan SS501. Album ini dirilis pada tanggal 13 Maret ...

 

American animated television series For the museum in South Africa, see The Owl House (museum). For the building in Russia, see House with an owl. The Owl HouseGenre Fantasy[1] Horror comedy[2] Created byDana TerraceVoices of Sarah-Nicole Robles Wendie Malick Alex Hirsch Tati Gabrielle Issac Ryan Brown Mae Whitman Cissy Jones Zeno Robinson Matthew Rhys Michaela Dietz Elizabeth Grullon Fryda Wolff Theme music composerTJ HillOpening themeThe Owl House Main ThemeComposers TJ Hill...

 

24th chapter of the second part of the Book of Kings in the Hebrew Bible and Old Testament 2 Kings 24← chapter 23chapter 25 →The pages containing the Books of Kings (1 & 2 Kings) Leningrad Codex (1008 CE).BookSecond Book of KingsHebrew Bible partNevi'imOrder in the Hebrew part4CategoryFormer ProphetsChristian Bible partOld TestamentOrder in the Christian part12 2 Kings 24 is the twenty-fourth chapter of the second part of the Books of Kings in the Hebrew Bible or the Second ...

PanggabeanAksara Batakᯇᯰᯎᯅᯩᯀᯉ᯲ (Surat Batak Toba)Nama margaPanggabeanSilsilahJarakgenerasi denganSiraja Batak1Si Raja Batak2Raja Isumbaon3Tuan Sorimangaraja4Tuan Sorbadibanua (Raja Nai Suanon)5Si Raja Sobu6Raja Hasibuan7Guru Mangaloksa Hasibuan8PanggabeanNama lengkaptokohSi Raja PanggabeanNama istriboru PasaribuNama anak1. Lumban Ratus2. Simorangkir3. Lumban SiagianKekerabatanInduk margaGuru Mangaloksa HasibuanPersatuanmargaSi Opat PusoranKerabatmargaHutabaratHutagalungHutator...

 

Api abadi Nizhny Novgorod Kremlin yang memperingati korban-korban tewas pada Perang Dunia II. Api abadi adalah sebuah api, lentera atau obor yang menyala untuk waktu yang tak terbatas. Kebanyakan api abadi dinyalakan dan dirawat secara sengaja, namun beberapa api abadi adalah fenomena alam yang disebabkan oleh kebocoran gas alam, kebakaran gambut dan kebakaran lapisan batubara, semuanya pada awalnya dipicu oleh petir, piezoelektrisitas atau kegiatan manusia, beberapa menyala dalam waktu yang ...

 

Politician and a favorite of King James VI and I The Right HonourableThe Earl of SomersetKGPortrait of Robert Carr, Earl of Somersetby John Hoskins Viscount Rochester Earl of Somerset Personal detailsBornRobert Kerr1587Wrington, Somerset, EnglandDied17 July 1645NationalityScottishSpouseFrances HowardChildrenAnne Russell, Countess of BedfordParents Sir Thomas Kerr Janet Scott Alma materQueen's College, OxfordOccupation Privy Counsellor Treasurer of Scotland Lord Chamberlain Known forPoetry, mu...

Ragnar Frisch Premio Nobel per l'economia 1969 Ragnar Anton Kittil Frisch (Oslo, 3 marzo 1895 – Oslo, 31 gennaio 1973) è stato un economista norvegese, vincitore, insieme all'olandese Jan Tinbergen, del primo premio Nobel per l'economia nel 1969, «per aver sviluppato e applicato modelli dinamici per l'analisi dei processi economici».[1] È stato inoltre insignito del Premio Feltrinelli, assegnato dall'Accademia Nazionale dei Lincei, nel 1961[2]. Indice 1 Biografia 1.1 Vit...

 

Campeonato Brasileiro Série AAltri nomiBrasileirão Assaí Sport Calcio TipoClub FederazioneCBF Paese Brasile OrganizzatoreConfederação Brasileira de Futebol TitoloCampione del Brasile[1] Cadenzaannuale Aperturamaggio Chiusuradicembre Partecipanti20 squadre Formulagirone all'italiana Retrocessione inSérie B Sito Internetbrasileirao.cbf.com.br StoriaFondazione1959 (Taça Brasil)1967 (Torneo Roberto Gomes Pedrosa)1971 (Brasileirão) Detentore Palmeiras Record vittorie ...

 

Research institute in Vietnam Vietnam Academy of Science and TechnologyViện Hàn lâm Khoa học và Công nghệ Việt NamVAST's headquarters buildingFormer namesVietnam Academy of ScienceTypeInstitute of technologyEstablished20 May 1975ChairmanChâu Văn MinhLocationHanoi, VietnamNicknameVASTWebsitehttp://www.vast.gov.vn/ The Vietnam Academy of Science and Technology (VAST; Vietnamese: Viện Hàn lâm Khoa học và Công nghệ Việt Nam) is the largest and most prominent research ins...

Частина серії проФілософіяLeft to right: Plato, Kant, Nietzsche, Buddha, Confucius, AverroesПлатонКантНіцшеБуддаКонфуційАверроес Філософи Епістемологи Естетики Етики Логіки Метафізики Соціально-політичні філософи Традиції Аналітична Арістотелівська Африканська Близькосхідна іранська Буддій�...

 

British lawyer, politician, and diplomat (1864–1958) Lord Robert Cecil redirects here. For his father and the prime minister, see Robert Gascoyne-Cecil, 3rd Marquess of Salisbury. The Right HonourableThe Viscount Cecil of ChelwoodCH PC QCChancellor of the Duchy of LancasterIn office10 November 1924 – 19 October 1927MonarchGeorge VPrime MinisterStanley BaldwinPreceded byJosiah WedgwoodSucceeded byThe Lord CushendumLord Keeper of the Privy SealIn office28 May 1923 –&...

 

American dramatist Clifford GoldsmithIn 1943, author Clifford Goldsmith and actresses Mary Rolfe, Ann Lincoln, Mary Shipp, and Charita Bauer posed with a cake in celebration of the fifth anniversary of The Aldrich Family radio program. Goldsmith wrote the show's scripts.BornMarch 29, 1899East Aurora, New YorkDiedJuly 11, 1971, age 72Tucson, ArizonaAlma materUniversity of PennsylvaniaAmerican Academy of Dramatic ArtsOccupationWriterSpouse(s)Margaret Towell (1921 – ?)Kathryn Allen (...

1971 studio album by Cheech & ChongCheech And ChongStudio album by Cheech & ChongReleasedAugust 1971[1]Recorded1971GenreComedyLength37:56LabelMelody Records, Ode, Warner Bros., WEAProducerLou AdlerCheech & Chong chronology Cheech And Chong(1971) Big Bambu(1972) Professional ratingsReview scoresSourceRatingAllMusic[2] Cheech And Chong is the 1971 debut album of Cheech & Chong, produced by Lou Adler. It features Dave, one of their most famous routines. Th...

 

KazTransOil JSCNative nameКазТрансОйлCompany typePublicTraded asKASE: KZTOIndustryOil and gasFounded1997 (1997)HeadquartersAstana, KazakhstanKey peopleTalgat Kurmanbayev (CEO)ServicesPipeline transportRevenue~ US$ 609 million (2015)Operating income~ US$ 216 million (2015)Net income~ US$ 127 million (2015)OwnerKazMunayGas (90%)Number of employees8 129 (2015)Subsidiaries«Batumi Terminals Limited» (100%) «Kazakhstan-China Pipeline» LLP (50%) «MunaiTas»NWPC» JSC (51%)W...

 

2003 UK local government election Map of the results for the 2003 Bradford council election. Elections to City of Bradford Metropolitan District Council were held on 1 May 2003. Before the election, Wibsey Labour councillor, Keith Thomson, had defected to Independent.[1][2] One third of the council was up for election, and it remained under no overall control.[3][4] Election result Bradford Local Election Result 2003[3] Party Seats Gains Losses Net gain...

American swimmer Linda JezekPersonal informationFull nameLinda Louise JezekNational teamUnited StatesBorn (1960-03-10) March 10, 1960 (age 64)Palo Alto, CaliforniaHeight5 ft 8 in (1.73 m)Weight128 lb (58 kg)SportSportSwimmingStrokesBackstrokeClubSanta Clara Swim ClubCollege teamStanford University Medal record Women's swimming Representing the United States Montreal 1976 4x100 m medley relay World Championships 1978 Berlin 100 m backstroke 1978 Berlin 2...

 

Duplication of an object under version control Branching, in version control and software configuration management, is the duplication of an object under version control (such as a source code file or a directory tree). Each object can thereafter be modified separately and in parallel so that the objects become different. In this context the objects are called branches. The users of the version control system can branch any branch. Branches are also known as trees, streams or codelines. The o...

 

Protonasi anilina oleh asam membentuk ion anilium yang larut dalam air. Dalam kimia, protonasi adalah penambahan proton (H+) pada suatu atom, molekul, atau ion, menghasilkan asam konjugasi.[1] Sebagai contoh di antaranya: Protonasi air oleh asam sulfat: H2SO4 + H2O H3O+ + HSO−4 Protonasi isobutena dalam pembentukan karbokation: (CH3)2C=CH2 + HBF4 (CH3)3C+ + BF−4 Protonasi amonia dalam pembentukan amonium klorida dari amonia dan hidrogen klorida: NH3(g) + HCl(g) → NH4Cl(s) Proton...

Fundamental principle of classical physics This article is about inertia in physics. For other uses, see Inertia (disambiguation). Part of a series onClassical mechanics F = d p d t {\displaystyle {\textbf {F}}={\frac {d\mathbf {p} }{dt}}} Second law of motion History Timeline Textbooks Branches Applied Celestial Continuum Dynamics Kinematics Kinetics Statics Statistical mechanics Fundamentals Acceleration Angular momentum Couple D'Alembert's principle Energy kinetic potential Force Frame of ...

 

Pour les articles homonymes, voir Boutin. Kim Boutin Kim Boutin aux sélections olympiques canadienne en août 2017. Contexte général Sport Patinage de vitesse sur piste courte Site officiel www.kimboutin.com Biographie Nationalité sportive Canadienne Nationalité Canada Naissance 16 décembre 1994 (29 ans) Lieu de naissance Sherbrooke, Québec Taille 1,64 m (5′ 5″) Palmarès Médailles obtenues Compétition Or Arg. Bro. Championnats du monde 0 0 2 modifier  Kim Bo...