Может кто-нибудь объяснить, какие типы данных низкого и высокого уровня в контексте программирования в целом. Исходя из фона Java, я думал, что низкий уровень будет примитивными типами, такими как integer, boolean, String и т. Д., А высокий уровень - это сложные типы объектов. Не совсем уверен, что это общее понимание, хотя я не мог найти четкое определение онлайн.Типы данных низкого уровня и высокого уровня
ответ
Ваше понимание в целом правильное, но оно также очень зависит от вашего конкретного кода.
Например, вы указываете String как примитивный тип; но в C, например, строка обычно представляет собой только массив символов, в то время как полнофункциональная String (как и в Java) является очень высокоуровневым объектом. По крайней мере, более высокий уровень, чем некоторый struct
s, вы можете легко определить, например, комплексное число или 2d-точку, например typedef struct {float x, y} Point
.
Конечно, это можно объяснить просто потому, что Java является языком более высокого уровня, чем C, поэтому его примитивы более высокого уровня, чем C. В конце концов, это означает, что уровень «высокий/низкий» определяется только как относительные значения, некоторые вещи более высокого уровня, чем другие.
В конечном счете, все программное обеспечение должно выполняться процессором, поэтому имеет смысл отметить, какие концепции реализованы на оборудовании, а какие нет.
Целые числа, указатели, битовые поля, с плавающей запятой и т. Д. Являются общими для большинства процессоров. Некоторые из них также обрабатывают массивы и даже простые (C-стильные) строки.
Структуры и типизированные значения обычно являются «неявными» в коде, но не являются функцией ЦП, поэтому они немного выше уровня, но обычно настолько низки, что для их обработки не может быть явного кода, а только структура программа заставляет данные вести себя так, как планировалось.
спасибо. Это дало мне понять – panas
Я бы сказал, что «низкий уровень» - это что-то, что зависит от вашей архитектуры операционной системы, например, «unsigned int» в C. Оно отличается от архитектуры 64 и 32 бит. с другой стороны, у вас может быть что-то, что абстрагируется от вашего оборудования. например, бесконечный список любого типа (в haskell)
- 1. Отладка: ошибки высокого уровня и низкого уровня
- 2. Как вложить ошибки низкого уровня и ошибки более высокого уровня?
- 3. графика высокого и низкого уровня в J2ME
- 4. Язык более высокого уровня и язык более низкого уровня?
- 5. Что такое модули высокого уровня и модули низкого уровня?
- 6. Перевести имя низкого уровня диска на имя диска высокого уровня
- 7. темы и языки высокого уровня
- 8. Ios низкого уровня сериализации
- 9. Python set Параллельные контакты контактов высокого/низкого уровня
- 10. Программирование низкого уровня GUI
- 11. Программирование звука низкого уровня
- 12. Что логические логики низкого уровня, мультиплексоры и декодеры соотносятся с языками высокого уровня?
- 13. Обнаружение высокого уровня и низкого уровня модули в зависимости применения Dependency Inversion Principe
- 14. System.Threading.Timer реализация низкого уровня
- 15. Как написать классическую игру высокого/низкого уровня в F #?
- 16. Установка уровня UITextField высокого уровня/семантики
- 17. S3 дизайн высокого уровня
- 18. Kafka потребитель высокого уровня
- 19. R - файл низкого уровня IO
- 20. Агрегация высокого уровня
- 21. Получение самого низкого уровня в дереве с любого более высокого уровня с автообъединение
- 22. Анализ пакетов Bluetooth низкого уровня
- 23. В чем смысл PHP-скриптов верхнего уровня и низкого уровня?
- 24. Что такое типы верхнего уровня и типы вложенного уровня?
- 25. Выяснение, какая функция более высокого уровня делает много вызовов низкого уровня
- 26. Полезно ли использовать API-интерфейсы более низкого уровня в классах более высокого уровня?
- 27. Должен ли я использовать протокол низкого уровня или высокого уровня для мгновенного мессенджера?
- 28. OSGi - API обслуживания низкого уровня
- 29. Оптимизация C - код низкого уровня
- 30. Средняя оценка самого низкого уровня
Правильное понимание: типы низкого уровня обычно являются примитивами, а типы высокого уровня обычно представляют собой типы, состоящие из примитивов или других типов высокого уровня. Это грубая, неформальная классификация типов. – xxbbcc
Где вы слышали этот термин? Вы должны искать там определение. – svick
@xxbbcc Спасибо – panas