Оперативка для чего нужна: Оперативная память компьютера. Как выбрать, заменить, модернизировать

какие бывают виды и характеристики



1

Общие сведения



2

Основные характеристики



3

Виды и типы памяти: от DDR до DDR4



4

Форм-фактор: компактный, «обычный», серверный



5

Объем: чем больше, тем лучше, но…



6

Тактовая частота = скорость + производительность



7

Пропускная способность = ширина шины × тактовую частоту



8

«Фишки»: тайминг и планки с радиатором



9

Выводы

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

Чтобы этого не произошло с вашим ПК, мы подготовили статью-пособие, которая поможет выбрать правильную «оперативку».

Оперативное запоминающее устройство (ОЗУ, оперативная память или просто «оперативка») служит для хранения промежуточных данных, с которыми работает процессор. ОЗУ подключается к материнской плате через специальный разъем. На одной «материнке» бывает от 2 до 16 слотов под него.

По назначению «оперативки» делят на следующие группы:

    • для ноутбука — их особенность в компактности. Они имеют уменьшенный форм-фактор, который обозначается SODIMM;

    • для системного блока — «обычные оперативки», которые используются в системных блоках десктопов, маркируются DIMM;

    • для сервера — отличаются повышенной безопасностью, имеют дополнительные чипы по исправлению внезапных ошибок (ECC) и буферизованную память. Используются в высоконагруженных системах.


    Отметим, что «оперативку» можно покупать набором, в который входит от 2 до 4 модулей. Набор выгоднее по цене и позволяет построить эффективные мультиканальные системы. Например, 2 модуля с объемом 4 Гб работают лучше, чем одна планка на 8 Гб. Причина в том, что пропорциональное деление операций увеличивает скорость обработки данных.

Лайфхак: при построении многокональных систем нужно использовать планки одной тактовой частоты. В противном случае будет работать только планка с наименьшим показателем.

К основным характеристикам ОЗУ относятся внешние и внутренние особенности. От первых зависит физический размер и&nbspконфигурация чипов на модуле (форм-фактор, поколение DDR). Вторые отвечают за эффективность работы, на которую влияет объем, тактовая частота, пропускная способность и различные «фишки».

Оперативная память бывает статической (SRAM) и динамической (DRAM). Первая имеет высокую скорость реагирования и, соответственно, цену, вторая является компромиссным вариантом, поэтому используется для массового производства.

DRAM, в свою очередь, делят на несколько типов: от DDR до DDR4. Цифра после букв означает поколение «оперативки»: чем больше цифра, тем моложе и лучше ОЗУ. От поколения к поколению улучшается энергопотребление, пропускная способность и охлаждение.

Отметим, что у каждой DDR свой уникальный «ключ» с определенным расположением прорезей. Если слот на «материнке» предназначен под DDR3, то DDR4 вставить в него не получится. Или получится, но работать ОЗУ все равно не&nbspбудет, а слот повредится!

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

Лайфхак: тип памяти вашего компьютера можно узнать через BIOS или сторонний софт, например, AIDA 64.

Форм-фактор — это типоразмер карты с определенной конфигурацией чипов. По форм-факторам карты делят на следующие типы:

  • компактные, которые маркируются SO-DIMM и предназначаются для ноутбуков и небольших системных моноблоков;

  • «обычные» — обозначаются DIMM и используются в стандартных системных блоках домашних и офисных ПК. Сюда относится U-DIMM — нерегистровый модуль.

  • серверные — предназначены для высоконагруженных систем. Бывают R-DIMM (регистровыми) и FBDIMM (буферизованными). Также такие модули имеют ECC-память для устранения внезапных ошибок.

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

От объема памяти зависит количество данных, которое сможет обработать компьютер в режиме online. С развитием технологий, игровой индустрии и визуального интернет-контента поступательно увеличивается потребность в объеме ОЗУ. Он растет в арифметической прогрессии и сегодня представлен следующей линейкой:

  • 2 Гб — это базовая величина для модуля ОЗУ. Такой платы хватит разве что на удобную работу в офисных прогах Microsoft и выхода в интернет с целью просмотра текстового контента;

  • 4 Гб — минимально необходимый объем ОЗУ, который обеспечивает комфортный веб-серфинг, просмотр видео в нормальном качестве, а также запускает простые игрушки;

  • 8 Гб — хороший объем для продуктивной работы с множеством открытых вкладок в браузере. Такое ОЗУ уже способно запустить фильм в хорошем качестве и дать возможность работать с графическими программами типа Photoshop;

  • 16 Гб — «золотой стандарт» нашего времени. С такой «оперативкой» можно геймерить, зарабатывать фрилансом, создавая сайты или дизайн для соцсетей, а также вести стримы на своем Youtube-канале;

  • 32 Гб — для тех, кто профессионально связан с монтажом видео, обработкой графической информации или выполнением других сложных задач;

  • 64 Гб — для «компьютерных качков», которые нуждаются в «тяжелом» железе или для решения специфических рабочих задач.

При выборе набора модулей ОЗУ вам пригодятся фильтры «Общий объем» и «Объем одного модуля» в нашем каталоге. С их помощью и всего в несколько щелчков вы найдете нужную комплектацию.

Важно знать: если у вас 32-битный Windows, то покупать оперативную память выше 3 Гб не имеет смысла. «Операционка» ее не прочитает!

От тактовой частоты зависит скорость обработки данных, а следовательно, производительность всего модуля. Здесь, кроме принципа «больше — лучше», следует понимать, что тактовая частота ОЗУ должна быть синхронизирована с тактовой частотой «материнки» и процессора. Например, ОЗУ может разгоняться до 2400 МГц, при этом материнская плата поддерживает только 1800 МГц. В этом случае 600 МГц, как и деньги, «улетают на ветер».

Как правило, по цифрам частотности «загоняются» оверклокеры, занимающиеся «разгоном» оборудования. Простому «юзеру» достаточно понимать, что планок с показателями от 2400 до 3000 Мгц хватит «с головой».

В то же время нельзя забывать и про тайминги (задержки памяти), которые находятся в логическом противоречии с частотой. Для оперативной работы нужно «много частот» и «мало таймингов», но чем больше частота, тем больше тайминги! В общем, ищите компромисс, исходя из своих компьютерных потребностей.

Лайфхак: при построении многоканальных систем оперативной памяти лучше использовать модули одного производителя, чтобы избежать непредвиденных «багов».

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

Чем выше пропускная способность, тем быстрее работает комп. По этой причине, при прочих равных, присмотритесь к&nbspмодулю с более высокой пропускной способностью. Разумеется, за скорость придется рассчитаться рублем, но зато и работа будет «с ветерком».

Важно знать: скорость работы можно увеличивать не только качеством железа, но и его количеством. Если в «материнке» имеется большое число слотов, можно настроить мультиканальное ОЗУ с использованием нескольких модулей. Существуют двуканальные (Dual Mode), четырехканальные и другие режимы работы.

CAS Latency (на профессиональном сленге — «тайминг») — это величина, которая измеряется в тактах и характеризует временную задержку памяти. Чем она меньше, тем быстрее работает «оперативка». Бывает, что латентность обозначают тремя или четырьмя цифрами, например, 2–2–2–6. Каждая из них отражает время выполнения запроса, паузы и т.д.

Для оверклокинга (разгона оборудования) и «прокачки оперативки» подойдут планки с радиатором. Для компактных корпусов или при установке мощных кулеров лучше брать низкопрофильные модули.

Лайфхак: таймингам памяти «оперативок» от поколения DDR3 и выше уделяется меньшее внимание, потому что у современных процессоров увеличен объем и количество уровней кэша. По этой причине «проц» самостоятельно вытягивает обработку первичных данных и не обращается к ОЗУ.

Итак, для того, чтобы выбрать производительную и бюджетную «оперативку», понадобится:

  • 1. Получить представление об ОЗУ. «Оперативка» нужна для хранения данных, которые обрабатывает процессор во время работы. ОЗУ отличаются по назначению: для ноутбуков, десктопов и серверных. Для построения мультиканальной системы ОЗУ покупают набор модулей.

  • 2. Разобраться в основных характеристиках. Параметры условно делятся на внешние и внутренние. Первые определяют размер и конфигурацию чипов на плате (форм-фактор, тип), вторые — ее «интеллект». Здесь важно учесть объем, тактовую частоту и пропускную способность.

  • 3. Изучить «фишки». Тайминг — это «добавочная» характеристика, которая отражает задержки памяти. Чем меньше тайминги, тем лучше. Однако с их уменьшением понижается тактовая частота, поэтому нужно искать компромисс. Для экономии места берут низкопрофильные планки. «Разгонщики» предпочитают планки с радиатором.

Теперь вы знаете все, чтобы найти «идеальный модуль» для любых задач. Выгодных покупок!

Рейтинг статьи:



 рейтинг: 5  голосов: 2 

Проверяем, нужна ли дорогая оперативная память DDR4 при сборке бюджетного ПК

Этот материал написан посетителем сайта, и за него начислено вознаграждение.

Дисклеймер: 

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

рекомендации

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

Кроме того, если вы используете процессоры 9-10-11 поколений, то задержки будут меньше и результаты, будут лучше, чем у меня. Алиэкспресс рассматривать не будем. 


Тестовая система:

— Процессор Intel Core i5-12400 (не F версия) Степпинг C0 

— Кулер ID-Cooling SE-224-XT Black (плюс отдельно купленные крепления для LGA1700)

— Материнская плата ASRock B660M Pro RS mAtx

— Оперативная память Crucial Ballistix 2x8GB DDR4 PC4-28800 BL8G36C16U4W

— SSD Kingston NV1 1TB m2

— Видеокарта Palit GeForce RTX 3050 StormX 8G

— Блок питания ASUS ROG STRIX 550G

— Корпус SilentiumPC Krux Naos TG (он же Sama im01 и тд. Имеет много названий, шасси одно и то же)

— Охлаждение: 2xbe quiet! Shadow Wings 2 120mm BL084 внизу, 1xNoctua NA-FK1 redux сзади, 1xNoctua NA-FK1 redux сверху, 1xNoctua NF-P12 Redux-1300 PWM на кулере, заменен вместо штатного 224XT Black.

Операционная система: Windows 10 Pro 21h2 x64 19043.1200

Драйвер Nvidia: 512.77 WHQL , 1920×1080 75Hz


Как будем тестировать:

Возьмем показатели самых недорогих планок на рынке, так как Ballistix U4 уже перестали выпускать (но в продаже их можно всё ещё найти). Да и не все покупали эти отличные планки в силу финансовых обстоятельств. Так что просто принудительно выставим тайминги по самым недорогим планкам и посмотрим как будет отличаться производительность. Сценарий стандартный: оперативная память взята двумя планками 8 + 8 и стоит в слотах A2/B2 (второй и четвертый слот от процессора, если слота четыре).

1. 8GB 2666MHz CL19 (19-19-19-43) — большинство недорогих планок имеют такие параметры. (Примеры)

2. 8GB 3200MHz CL16 (16-18-18-38) — аналогично с первыми, только чуть более дорогие. (Примеры)

3. 8GB 3600MHz CL18 (18-22-22-42) — самые бюджетные высокочастотные на рынке. (Примеры)

4. 8GB 3466MHz CL15 (15-16-15-34) — Ballistix U4 со слегка оптимизированными таймингами.

Примечание: 

Для владельцев материнских плат Asrock есть инструмент, который работает не так эффективно как у, допустим MSI. Это инструмент «Оптимизация таймингов». Пример того, какие отличия могут быть — можете посмотреть здесь ( i2Hard ).

Настройки в играх возьмем минимальные и средние (FHD, без DLSS и прочей мишуры), что более-менее будет соответствовать выставлению настроек на ПК, который собирается за минимальные деньги (как новый на базе i3-10100\12100, так и б.у).


Бенчмарки:

Aida64:

Unigine Heaven 4.0:

Unigine Superposition:

Игры:

1. Shadow of The Tomb Raider Definitive Edition:

2. Cyberpunk 2077 v 1.52:


Тайминги

Aida64

По Aida64 результаты среднестатистическому пользователю ничего не скажут, но прирост есть.

Unigine Heaven 4.0

Что мы видим в первом же бенчмарке? Упор в графику, что также будет на низкобюджетном ПК. Также роль играет уже почтенный возраст бенчмарка. Разницы фактически нет даже по минимальному Fps.

Unigine Superposition

Здесь мы видим аналогичную ситуацию, никаких преимуществ в бенчмарке, если сравнить 2666 CL19 с оптимизированными 3466 CL15 — не наблюдается.

Shadow of The Tomb Raider Definitive Edition

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

Cyberpunk 2077 v 1.52

А вот Cyberpunk 2077 на низких настройках всё же требует более высокую частоту, но прирост в данном случае мизерный, как такового профита от настроенных таймингов мы не получаем. Разве что на 2666Mhz мы получаем более низкий минимальный Fps, что ожидаемо. На средних настройках ситуация аналогичная.

Киберкотлетным товарищам с самыми дешевыми 144Hz матрицами или хотя бы 75Hz — разгон не помешает. Если система ограничена 2666MHz (H и B чипсеты 300, 400 линейки и H 500-й линейке. 2933Mhz для i5, i7 в зависимости от поколения), то хотя бы ужать тайминги.


Важные моменты:

а) Используйте двухканальный режим (две планки памяти, а не одну). Избавитесь от фризов, дадите доп буст встроенной графике, профит в рабочих задачах и тд. Сплошные плюсы.

б) Сборки без видеокарты по примеру Ryzen 3200G, 3400G, 4650G, 5600G и тд. Если хотите повысить производительность встройки — то разгон и ужимание таймингов + разгон iGPU дадут немаленький буст к производительности.

в) Прирост частоты на платформах от AMD и Intel немного отличается. У синих он не так заметен, если мы говорим про DDR4 и 9-10-11 поколения камней, а вот для красных высокочастотные планки желательны. И буст Вы получаете более высокий, чем в случае с Intel, особенно не на максимальных настройках графики. Естественно с учетом упора в шину.

г) Так называемая рубрика — вредные советы. Стоит фильтровать и проверять информацию, которую Вам дают как истину в последней инстанции:

Случаев смерти проца после активации XMP в природе не встречал (и естественно это не значит, что такого не бывает). Пойдем от обратного — если планкам каюк, никто не узнает, разгоняли вы их или нет. Смерть материнской платы от разгона ОЗУ — практически нереально, если Вы не «разгонятор в щи». Если Вы конспиролог и у Вас в лифте один американский президент делает всякие пахабные штучки, то кто Вам мешает снять батарейку на умершей матплате на время и поставить её обратно? И последнее — процессор. Даже если накроется контроллер — он мог накрыться в нормальной эксплуатации и в сервисном центре никак не определят, что Вы гнали в щи. 

XMP является спасительной палочкой для тех, кто слабо разбирается в этой теме и не хочет тратить время на это. Зашел в биос, поставил нужный профиль, наслаждайся бустом. Работает в 99 процентах случаев. Естественно, те, кто занимается разгоном более серьёзно, не используют XMP профили. Может был намек на неадекватное выставление напряжений на контроллеры, но это прерогатива с большего матплат от Gigabyte (но и на платах других вендоров бывает). Не говорю за все модели, но не раз было замечено. Это проблема сугубо автора данного тезиса. Бить Ерёму за то, что сделал Сидор — бессмысленно.

На материнках от асрока как раз есть упомянутый механизм автоматической оптимизации таймингов. На 10-м поколении вообще проще всего разгонять память без привязки к Gear 1\2. Но видим тезис, что на Zen+ проще разгонять память. Хотя на интеле это делается ну очень просто без каких-либо привязок к шине и тд и тп. Это очень печально — жить в своей вселенной. Что взять с тех, кто не пользуется современным железом и застрял во временах CRT-мониторов и Win XP? Вероятно, только анализы.

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


Итоги: 

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

Суть проста: если Вы рассматриваете варианты покупки оперативной памяти, и разница, к примеру с 2666 CL19 и 3200 CL16 копеечная, то более скоростной вариант можно брать, так как с большой долей вероятности сможете ужать тайминги сильнее, получите буст. Ну и при апгрейде своей системы тоже будет перспектива не покупать память снова. Если у Вас бюджетная сборка и всё рассчитывается до копейки, то есть смысл смотреть варианты даже от незнакомых брендов, главное смотрите тайминги.

Ещё раз: зачем это очередная статья бесполезного блохера? Ещё раз напомнить о бесплатном способе повысить производительность своей системы. Не во всех сценариях, но во многих. Обычные пользователи не знают как зайти в BIOS, не знают как выставить XMP и тем более сделать разгон. Важно всегда напоминать, ведь кто-то новый покупает или собирает комп и ищет информацию о том — а есть ли смысл? 


Более подробно о влиянии таймингов, частот. Для тех, кто еще не смотрел:

PRO Hi-Tech

i2 HARD


Спасибо за внимание!

 Другие полезные и не очень статьи

Ищем достойные термопрокладки для видеокарты. Часть 1

Ищем достойную термопасту для видеокарты. Часть 2

Где мой 2007 или как пережить дефицит игр в 2022 году

Опускаемся на дно производителей SSD: Exegate M.2 — целесообразность покупки

Какую редакцию Windows 10 выбрать — LTSC vs PRO в играх и бенчмарках

Изгиб крышки и текстолита на примере i5 12400. Проверяем на практике

Андервольт Nvidia GeForce RTX 3050. Нищие лучи от Хуанга

Андервольт Intel Core i5 12400 за пару минут или как выживать в компактном корпусе и кулером за 3 копейки

Экономим место на столе и подбираем недорогой и компактный корпус для ПК

Сток vs настройка i5 12400 + RTX 3050 — изучаем влияние в бенчмарках и играх

Как не уставать от постоянной работы или гейминга за компьютером. Простые рекомендации

Сравниваем цены на комплектующие в РФ и РБ и ищем разницу

Выбираем материнскую плату LGA1700 под 12-поколение процессоров Intel

Где покупать комплектующие для ПК. Ищем дно рынка

Выбираем тихие и долговечные вентиляторы для корпуса ПК

Xbox Series X\S спустя 1.5 года использования. Мнение ПК-боярина и бывшего сонибоя

Запоздалый обзор Xiaomi Pad 5 спустя время. Отличное железо с посредственным софтом

Этот материал написан посетителем сайта, и за него начислено вознаграждение.

Как называется оператор SQL для «»?

спросил

Изменено
3 года, 6 месяцев назад

Просмотрено
83k раз

Я запутался и в гугле не нашел. Может ли кто-нибудь сказать мне, что такое имя оператора Sql <> ?

  • sql
  • операторы

1

<> НЕ равно, это то же самое, что и !=

8

Это «не равно». Просмотрите список операторов используемой вами базы данных и найдите соответствующий раздел (обычно «операторы сравнения»). Например:

  • SQL-сервер
  • MySQL
  • Оракул
  • Постгрес

Это оператор не равно .
Использование:

 выберите *
со стола
где фу <> 0
 

Это оператор Not Equal, но мне придется быть многословным, чтобы мой ответ был опубликован, потому что я еще не ввел достаточно символов.

<> означает не равно то же, что и !=

Проверяет, равны или нет значения двух операндов, если значения не равны, то условие становится истинным. (a <> b) или (a != b) верно.

Вот ответ – Технически нет разницы между != и <>. Оба они работают одинаково, и нет абсолютно никакой разницы с точки зрения производительности или результата.
Если != и <> оба одинаковы, какой из них следует использовать в запросах SQL?

Вы можете использовать != или <> оба в своих запросах, поскольку оба они технически одинаковы, но я предпочитаю использовать <>, так как это стандарт SQL-92.

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания и подтверждаете, что прочитали и поняли нашу политику конфиденциальности и кодекс поведения.

Синтаксис

.

Что такое оператор :=?

спросил

Изменено
1 год, 4 месяца назад

Просмотрено
95 тысяч раз

В некоторых языках программирования я вижу (пример):

 x := y
 

Как обычно называется этот оператор := и что он делает?

  • синтаксис
  • языки программирования
  • оператор-ключевое слово
  • двоеточие-равно

1

Во всех языках, поддерживающих оператор := , это означает присваивание.

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

означает ли := = ?

Я не могу вспомнить ни одного языка, где := означает то же, что и = .


В MySQL := и = используются для присваивания, однако они не взаимозаменяемы, и выбор правильного зависит от контекста. Чтобы сделать ситуацию еще более запутанной, для сравнения также используется оператор = . Интерпретация = либо как присвоение, либо как сравнение также зависит от контекста.

4

Это новый оператор, который появится в Python 3.8 и сыграл роль в досрочном выходе на пенсию Гвидо ван Россума из BDFL.

Формально оператор допускает так называемое «выражение присваивания». Неофициально оператора называют «оператором-моржом».

Позволяет выполнять присваивание одновременно с вычислением выражения.

Итак:

 env_base = os.environ.get("PYTHONUSERBASE", None)
если env_base:
    вернуть env_base
 

можно сократить до:

 если env_base := os. environ.get("PYTHONUSERBASE", нет):
    вернуть env_base
 

https://www.python.org/dev/peps/pep-0572/#examples-from-the-python-standard-library

Я обычно вижу это больше в псевдокоде, где это означает присваивание. Таким образом, x := y означает «установить значение x равным значению y», тогда как x = y означает «равно ли значение x значению y?»

Этот символ называется «становится» и был введен в IAL (позже названный Алгол 58) и Алгол 60. Это символ для присвоения значения переменной. Один читает х := у; как «x становится y».

Использование «:=» вместо «=» для присваивания является математической привередливостью; с такой точки зрения «х = х + 1» бессмысленно. Другие современные языки могли использовать стрелку влево для назначения, но это не было обычным явлением (как отдельный символ) во многих наборах символов.

Algol 68 дополнительно различал идентификацию и присвоение; INT ответ = 42; говорит, что «ответ» объявляется тождественно равным 42 (т. е. является постоянным значением). В INT ответ := 42; «ответ» объявляется как переменная и изначально ему присваивается значение 42.

Существуют и другие символы присваивания, такие как +:= , произносится плюс-и-становится; x +:= y добавляет y к текущему значению x, сохраняя результат в x.

(Пробелы не имеют значения, поэтому их можно вставлять «в» идентификаторы, а не возиться с символами подчеркивания)

Многие языки используют общие операторы. Обычно = зарезервировано для присвоения переменной и не должно рассматриваться в математическом контексте, если оно отдельно. Равенство в некоторых языках, таких как Java и Bash, проверяется, хотя ==

PL/I имеет (имела?) как = , так и := . = используется как для присваивания, так и для сравнения — компилятор пытается выяснить, что вы имели в виду, исходя из контекста. Когда/если он решит выполнить сравнение там, где вы действительно имели в виду присваивание, вы можете использовать := для принудительного присваивания.