Терминология: “регистры” в программировании ассемблера

Это должно работать:

df[df.loc[:, 'Prod1':'Region'].isin([0, 1]).all(axis=1)]
7
задан starblue 2 May 2009 в 10:19
поделиться

5 ответов

Регистр - это область памяти внутри ЦП. Вот несколько определений:

  • Регистровый файл - это массив регистров - полное описание см. В http://en.wikipedia.org/wiki/Register_file .
  • Регистр eax - это регистр накопителя в семействе процессоров Intel x86 - это место, где выполняются вычисления с целыми числами.
  • Программный регистр (я думаю, вы имеете в виду программный счетчик) - это регистр специального назначения, который содержит адрес следующей инструкции машинного кода, которая должна быть выполнена
8
ответ дан 6 December 2019 в 07:28
поделиться

Регистр является самым основным устройством хранения данных. Теперь это основные отличия.

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

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

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

5
ответ дан 6 December 2019 в 07:28
поделиться

«Аппаратный регистр» также может относиться к расположению внутри некоторого аппаратного устройства. Например, UART (COM-порт) выглядит как D-образный разъем с 9 или 25 контактами снаружи корпуса, но для драйвера устройства это выглядит как несколько регистров конфигурации, регистр состояния и регистры данных, содержащие следующий символ: отправить и последний полученный символ. (Я упустил много деталей там.]

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

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

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

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

3
ответ дан 6 December 2019 в 07:28
поделиться

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

может ли быть так, что под программным регистром имеется в виду программный счетчик?

4
ответ дан 6 December 2019 в 07:28
поделиться

Ну, у вас есть общий целевые регистры, то у вас есть регистры, которые имеют специальное использование (например, регистры счетчика программ), и у вас есть различные другие (регистры памяти / сегментов, SSE).

EAX, EBX и т. д. являются стандартными регистрами общего назначения . Вы можете использовать их для чего угодно. Обычно возвращаемое значение должно быть помещено в EAX, но в основном это все. Тогда у вас есть указатель стека EBP, который указывает на начало вашего стека. Наконец, вам нужно запрограммировать счетчик, который указывает на текущую инструкцию EIP. На x86 есть некоторые особые случаи, когда два регистра сливаются при выполнении 64-битных целочисленных вычислений. Для строковых инструкций существуют и другие особые случаи. Если вы собираетесь изучать сборку, проще всего будет начать с PowerPC, у которого больше регистров, и вы можете использовать их все без ограничений.

Все эти регистры, конечно же, являются аппаратными регистрами, которые То есть они физически встроены в ваш ЦП;) Место, где они находятся, называется файлом регистров.

Другой тип регистров, который вы можете увидеть, - это виртуальная машина, которая использует регистры ( Parrot ]), вы получаете «виртуальные регистры», которые позже назначаются реальным регистрам.

4
ответ дан 6 December 2019 в 07:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: