powered by simpleCommunicator - 2.0.47     © 2025 Programmizd 02
Форумы / C++ [игнор отключен] [закрыт для гостей] / почему так?
25 сообщений из 79, страница 3 из 4
почему так?
    #40080767
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T
petrav
пропущено...

А на восьмибитных системах Си не было?

Если не путаю, до 16-битных не было ни ОС, ни компиляторов, в машинных кодах писали, на перфокартах и т.п. 8-битная это же всего 256 байт адресуемой памяти.

Intel8080 - с 8-битным словом, нескольно ОС (СР/М-80, например), компиляторы с кучи языков (в т.ч.. С).
...
У меня даже книжка по языку С есть, там в приложении asm - код (i8080) компилятора C.
...
Рейтинг: 0 / 0
почему так?
    #40080777
booby
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну, это...
всё-таки разрабатывался C на базе и для 16-битного компьютера изначально (pdp-11)

А intel-8080 появился на 4 года позже, и были у него компиляторы с фортрана, кобола, бейсика в разнообразии, ну и си, конечно.
не считая ассемблера.

В общем - домашний суперкомпьютер для радиолюбителей.


https://altairclone.com/downloads/manuals/
...
Рейтинг: 0 / 0
почему так?
    #40080791
DHDD
поиграться:

https://onlinegdb.com/xmp6Prn05

тут интереснее
...
Рейтинг: 0 / 0
почему так?
    #40080792
petrav
Dima T
пропущено...

Если не путаю, до 16-битных не было ни ОС, ни компиляторов, в машинных кодах писали, на перфокартах и т.п. 8-битная это же всего 256 байт адресуемой памяти.

Z80 — восьмибитный процессор. Там были интерпретаторы, компиляторы и ОС.

и 64кб памяти
...
Рейтинг: 0 / 0
почему так?
    #40080794
Dima T
Как выяснилось битность процессора и битность типа int это разные параметры, нет смысла обсуждать первое. А int, как понимаю, изначально имел размер самого большого операнда, с которым позволял работать процессор. Во времена появления С это было 16 бит.

но сейчас это разве где-то используется? Сейчас есть short и int. И везде есть C/C++, который с ними и работает.
...
Рейтинг: 0 / 0
почему так?
    #40080799
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
Dima T
пропущено...

Если не путаю, до 16-битных не было ни ОС, ни компиляторов, в машинных кодах писали, на перфокартах и т.п. 8-битная это же всего 256 байт адресуемой памяти.

Intel8080 - с 8-битным словом, нескольно ОС (СР/М-80, например), компиляторы с кучи языков (в т.ч.. С).
...
У меня даже книжка по языку С есть, там в приложении asm - код (i8080) компилятора C.

Он нормально работал с 16-битными операндами, int на нем был 16 бит, как и на Z80. Как уже сказали выше: 8-мибитной была шина данных, поэтому он считался 8-мибитным.
...
Рейтинг: 0 / 0
почему так?
    #40080800
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
Dima T
Как выяснилось битность процессора и битность типа int это разные параметры, нет смысла обсуждать первое. А int, как понимаю, изначально имел размер самого большого операнда, с которым позволял работать процессор. Во времена появления С это было 16 бит.

но сейчас это разве где-то используется? Сейчас есть short и int. И везде есть C/C++, который с ними и работает.

Думаю уже нигде не надо 16-тибитный int, но сообщество разработчиков С/С++ зациклено на обратной совместимости, поэтому поддерживается.
...
Рейтинг: 0 / 0
почему так?
    #40080801
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
бабушкин зайчик
petrav
пропущено...

Z80 — восьмибитный процессор. Там были интерпретаторы, компиляторы и ОС.

и 64кб памяти

2^16 = 64k
...
Рейтинг: 0 / 0
почему так?
    #40080810
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T
ъъъъъ
пропущено...

Intel8080 - с 8-битным словом, нескольно ОС (СР/М-80, например), компиляторы с кучи языков (в т.ч.. С).
...
У меня даже книжка по языку С есть, там в приложении asm - код (i8080) компилятора C.

Он нормально работал с 16-битными операндами, int на нем был 16 бит, как и на Z80. Как уже сказали выше: 8-мибитной была шина данных, поэтому он считался 8-мибитным.

Ну как мы выяснили, регистры на Z80 были, всё же, тоже восьмибитными.
...
Рейтинг: 0 / 0
почему так?
    #40080812
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не забывай, что у него была сегментная адресация памяти. До гигабайта он мог адресовать ЕМНИП.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
почему так?
    #40080813
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
petravкак мы выяснили, регистры на Z80 были, всё же, тоже восьмибитными.

Ты так и не прочитал оригинал...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
почему так?
    #40080889
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
Не забывай, что у него была сегментная адресация памяти. До гигабайта он мог адресовать ЕМНИП.

У i8080/z80? Не было, не мог.
...
Рейтинг: 0 / 0
почему так?
    #40080906
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, действительно, не мог.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
почему так?
    #40080907
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Intel 8088
Intel 8088 — 16-битный микропроцессор, выпущенный компанией Intel 1 июля 1979 года и основанный на микропроцессоре Intel 8086, но имевший 8-битную шину данных
Маркетинг вся эта битность процов
...
Рейтинг: 0 / 0
почему так?
    #40080910
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T
Intel 8088
Intel 8088 — 16-битный микропроцессор, выпущенный компанией Intel 1 июля 1979 года и основанный на микропроцессоре Intel 8086, но имевший 8-битную шину данных

Маркетинг вся эта битность процов
Чёйта? С т.зр. программиста i8088 вполне себе 16-битный.
А i8080 - 8 битный. С памятью можно было работать исключительно побайтно. Загрузка 16-битных регистров из памяти - минимум две команды. Правда, можно было изгальнуться, и выгребать сразу по 2 байта за команду, сохраняя/восстанавливая 16-битный указатель стека, что заметно увеличивало скорость пересылки блоков. Об этом фокусе целая статья в "МПСС" была, и я когда-то BIOS для CP/M-80 переписал, используя такой приём.
...
... изначально пустая тема 6ачала петлять.
...
Рейтинг: 0 / 0
почему так?
    #40080915
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из курса ЦУМПС я помню что в процессоре различают разрядности шин данных и шин адреса и шин управления.
Это было где-то в 1990х. Что такое разрядность для современного CPU? Разрядность РОН? Разрядность расширенных
регистров типа SSE3/AVX ? Что такое шина адреса? Там кажется есть универсальная шина которая меняет своё назначение.
Что такое чтение памяти для Z80? Чтение байта по адресу? Что такое чтение памяти для современного CPU? Выборка всей
кеш-линии?

Что такое разрядность современных видеокарт? Там - вообще конь не валялся. Там можно утонуть в инженерных
допущениях. А процессоров/ядер/threads там сколько? А что считать процессором?

Что AMD и что Intel считает ядром?
...
Рейтинг: 0 / 0
почему так?
    #40080916
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ
А i8080 - 8 битный. С памятью можно было работать исключительно побайтно. Загрузка 16-битных регистров из памяти - минимум две команды.

Выше про Z80 было 22341489 , тоже 8-мибитным считается, но это умеет.
...
Рейтинг: 0 / 0
почему так?
    #40080917
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MK52 имел шину данных 1 бит, с памятью общался по биту. Его процессор однобитный?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
почему так?
    #40080924
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Что такое разрядность для современного CPU?
Разрядность виртуальных адресов.Что AMD и что Intel считает ядром?Натурально - ЦПУ. Иногда - даже без SSE :)
...
Рейтинг: 0 / 0
почему так?
    #40080925
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ъъъъъ

А i8080 - 8 битный. С памятью можно было работать исключительно побайтно. Загрузка 16-битных регистров из памяти - минимум две команды. Правда, можно было изгальнуться, и выгребать сразу по 2 байта за команду, сохраняя/восстанавливая 16-битный указатель стека, что заметно увеличивало скорость пересылки блоков.

Это как? Поподробнее можно? Пересылать блоки памяти через регистр стека?
...
Рейтинг: 0 / 0
почему так?
    #40080927
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
8 бит шина данных для Z80. На схеме видно.

...
Рейтинг: 0 / 0
почему так?
    #40080932
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К счастью, это не мешает Си иметь типы с разрядностью больше, чем у ШД.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
почему так?
    #40080948
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Что такое разрядность для современного CPU?
Разрядность виртуальных адресов.
Мда... красиво сказано. И вить не придерёшся. Виртуальных мать их адресов!
А на материнку всё равно могу поставить только 32Гб. Из 64 бит используем только 35.
...
Рейтинг: 0 / 0
почему так?
    #40080956
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
petrav
ъъъъъ

А i8080 - 8 битный. С памятью можно было работать исключительно побайтно. Загрузка 16-битных регистров из памяти - минимум две команды. Правда, можно было изгальнуться, и выгребать сразу по 2 байта за команду, сохраняя/восстанавливая 16-битный указатель стека, что заметно увеличивало скорость пересылки блоков.

Это как? Поподробнее можно? Пересылать блоки памяти через регистр стека?

Не, регистр стека только как указатель использовался. Выставляешь указатель стека (PSW) на хвост обрабатываемого блока, потом - POP <пара 8-битных регистров>. Получаешь сразу два байта в нужной паре регистров плюс модификацию PSW на 2. Т.е., косвенная адресация 16-битного слова с авто инкрементом/декрементом. А если использовать "обычные" команды с косвенной адресацией - то только по одному байту, и без Модификации указателя.
Очень круто было. . Прямо вот сразу заметно. Например, скролл массива видеопамяти стал без видимых лагов.
...
Рейтинг: 0 / 0
почему так?
    #40080959
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
А на материнку всё равно могу поставить только 32Гб. Из 64 бит используем только 35.
А не надо путать виртуальные адреса и физические.
...
Рейтинг: 0 / 0
25 сообщений из 79, страница 3 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / почему так?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]