Вот совершенно новый компьютер. Все физические части исправны — процессор, память, экран, клавиатура. Включите его, и ничего не происходит. Никакого рабочего стола…
English narration · English + 中文 subtitles burned in · Английское озвучивание · Английский + китайские субтитры (встроенные)
4.1
Hardware and software · Аппаратное и программное обеспечение
English
A computer system is made of two parts that work together.
Hardware 硬件 is the physical 物理的 parts of the computer — the parts you can touch. Examples: the CPU, memory, keyboard, screen and hard disk.
Software 软件 is the programs 程序 that control the computer and tell the hardware what to do.
Hardware cannot do anything useful on its own. Software needs hardware to run on. Both are needed.
Русский
Компьютерная система состоит из двух частей, работающих совместно.
Аппаратное обеспечение — это физические компоненты; программное обеспечение — это программы
Аппаратное обеспечение — это физические части компьютера — те, которые можно потрогать. Примеры: процессор, память, клавиатура, экран и жесткий диск.
Программное обеспечение — это программы, управляющие компьютером и указывающие аппаратному обеспечению, что делать.
Аппаратное обеспечение не может ничего полезного выполнять самостоятельно. Программному обеспечению необходимо аппаратное обеспечение для работы. Оба необходимы.
Материнская плата и подключенные к ней компоненты — это аппаратное обеспечение, физические части, которые можно потрогатьОперационная система — это программное обеспечение, программы, указывающие аппаратному обеспечению, что делать
Types of software · Типы программного обеспечения
Syllabus · Программа
English
Candidates should be able to:
Notes and guidance
1 Describe the difference between system software and application software and provide examples of each
• System software provides the services that the computer requires, including operating system and utility software • Application software provides the services that the user requires
2 Describe the role and basic functions of an operating system
• Including: – managing files – handling interrupts – providing an interface – managing peripherals and drivers – managing memory – managing multitasking – providing a platform for running applications – providing system security – managing user accounts
3 Understand how hardware, firmware and an operating system are required to run applications software
• Applications are run on the operating system • The operating system is run on the firmware • The bootloader (firmware) is run on the hardware
4 Describe the role and operation of interrupts
• Including: – how an interrupt is generated – how it is handled using an interrupt service routine – what happens as a result of the interrupts • Software interrupts include division by zero and two processes trying to access the same memory location • Hardware interrupts include pressing a key on the keyboard and moving the mouse
Русский
Кандидаты должны уметь:
Примечания и рекомендации
1 Описывать различие между системным программным обеспечением и прикладным программным обеспечением и приводить примеры каждого
• Системное программное обеспечение предоставляет услуги, необходимые компьютеру, включая операционную систему и вспомогательное ПО • Прикладное программное обеспечение предоставляет услуги, необходимые пользователю
2 Опишите роль и основные функции операционной системы
• Включая: – управление файлами – обработка прерываний – предоставление интерфейса – управление периферийными устройствами и драйверами – управление памятью – управление многозадачностью – предоставление платформы для запуска приложений – обеспечение системной безопасности – управление учетными записями пользователей
3 Поймите, как аппаратное обеспечение, прошивка и операционная система необходимы для запуска прикладного программного обеспечения
• Приложения запускаются на операционной системе • Операционная система запускается на прошивке • Загрузчик (прошивка) запускается на аппаратном обеспечении
4 Опишите роль и работу прерываний
• Включая: – как генерируется прерывание – как оно обрабатывается с помощью подпрограммы обработки прерываний – что происходит в результате прерываний • Программные прерывания включают деление на ноль и попытку двух процессов одновременно обратиться к одному и тому же адресу памяти • Аппаратные прерывания включают нажатие клавиши на клавиатуре и движение мышью
Source: Cambridge International syllabus · Источник: Программа Cambridge International
English
Software is split into two types.
System software
System software 系统软件 controls the computer itself and gives a base for other programs to run on. Examples:
operating system 操作系统 (see below);
compiler 编译器 and linker 链接器 (tools that turn programs into a form the computer can run);
device driver 设备驱动程序 — software that lets the operating system control a piece of hardware;
utility software 实用程序 — small tools that look after the computer (for example anti-virus, backup, disk clean-up).
Below the operating system sits firmware 固件 – software stored permanently on ROM or flash that runs the moment the computer is switched on. The BIOS and the bootloader 引导程序 are firmware: they test the hardware and then load the operating system. So the layers stack up hardware → firmware → operating system → application software, each running on the layer below.
Application software
Application software 应用软件 lets the user do a useful task. Examples:
word processing 文字处理 software (writing documents);
spreadsheet 电子表格 software (working with numbers in a grid);
database management system 数据库管理系统 (storing and searching data);
web browser 网页浏览器 (viewing web pages).
System software
Application software
Job
runs and manages the computer
helps the user do a task
Used by
the computer (in the background)
the user (directly)
Examples
operating system, drivers, utilities
word processor, browser, games
Русский
Программное обеспечение делится на два типа.
Программное обеспечение делится на системное (управляет компьютером) и прикладное (позволяет пользователю выполнять задачи)
Системное программное обеспечение
Системное программное обеспечение управляет самим компьютером и создает базу для запуска других программ. Примеры:
операционная система (см. ниже);
компилятор и линкер (инструменты, преобразующие программы в форму, которую может выполнить компьютер);
драйвер устройства — программное обеспечение, позволяющее операционной системе управлять компонентом аппаратного обеспечения;
утилиты — небольшие инструменты, обслуживающие компьютер (например, антивирус, резервное копирование, очистка диска).
Под операционной системой находится прошивка – программное обеспечение, постоянно хранящееся на ПЗУ или флеш-памяти и запускаемое сразу после включения компьютера. BIOS и загрузчик являются прошивкой: они проверяют аппаратное обеспечение, а затем загружают операционную систему. Таким образом, слои выстраиваются по схеме аппаратное обеспечение → прошивка → операционная система → прикладное программное обеспечение, каждый слой работает на слое, расположенном ниже.
Прикладное программное обеспечение
Прикладное программное обеспечение позволяет пользователю выполнять полезные задачи. Примеры:
текстовые редакторы (написание документов);
электронные таблицы (работа с числами в сетке);
системы управления базами данных (хранение и поиск данных);
веб-браузеры (просмотр веб-страниц).
Системное ПО
Прикладное ПО
Задача
управляет и обслуживает компьютер
помогает пользователю выполнить задачу
Используется
компьютером (в фоновом режиме)
пользователем (непосредственно)
Примеры
операционная система, драйверы, утилиты
текстовый редактор, браузер, игры
4.1
The operating system · Операционная система
English
An operating system (OS) is the main system software. It controls the whole computer and lets the hardware, the application software and the user work together. Without an OS the computer is very hard to use.
The OS has many roles:
managing files — saving, opening, naming, moving and deleting files;
handling interrupts (see below);
providing a user interface 用户界面 so the user can control the computer;
managing memory — deciding what is kept in RAM and where;
managing peripherals 外围设备 and their drivers — controlling devices like printers;
managing multitasking 多任务处理 — letting several programs run at once;
providing a platform 平台 for running application software;
managing security — user accounts, passwords and access rights.
Русский
Операционная система (OS) — это основное системное программное обеспечение. Она управляет всем компьютером и позволяет аппаратному обеспечению, прикладному программному обеспечению и пользователю работать совместно. Без ОС пользоваться компьютером очень сложно.
Операционная система находится между аппаратным обеспечением и прикладным программным обеспечением и пользователем, позволяя им работать совместно
OS выполняет множество функций:
управление файлами — сохранение, открытие, переименование, перемещение и удаление файлов;
обработка прерываний (см. ниже)
предоставление пользовательского интерфейса, чтобы пользователь мог управлять компьютером;
управление памятью — определение того, что хранится в оперативной памяти и где именно;
управление периферийными устройствами и их драйверами — управление такими устройствами, как принтеры;
управление многозадачностью — обеспечение одновременной работы нескольких программ;
предоставление платформы для выполнения прикладного программного обеспечения;
управление безопасностью — учетные записи пользователей, пароли и права доступа.
4.1
Interrupts · Прерывания
English
An interrupt 中断 is a signal sent to the processor 处理器 to tell it that something needs attention now.
An interrupt can come from three sources:
hardware — for example a key is pressed, or a printer runs out of paper;
software — for example a program tries to divide by zero;
the user — for example the user presses a "cancel" key.
When an interrupt arrives, the processor stops what it is doing, saves its place, and services (deals with) the interrupt. When that is done, it goes back to what it was doing before. This lets the computer react quickly to important events.
Русский
Прерывание (interrupt) — это сигнал, отправляемый процессору, сообщающий ему о необходимости немедленного внимания.
Прерывание может поступать от трех источников:
аппаратное обеспечение — например, нажата клавиша или закончилась бумага в принтере;
программное обеспечение — например, программа пытается разделить на ноль;
пользователь — например, пользователь нажимает клавишу «Отмена».
Когда поступает прерывание, процессор останавливает выполняемую работу, сохраняет текущее положение и обрабатывает (обслуживает) прерывание. После этого он возвращается к тому, что делал ранее. Это позволяет компьютеру быстро реагировать на важные события.
По прерыванию ЦП сохраняет свое положение, выполняет подпрограмму обработки прерывания, затем восстанавливает положение и продолжает работу
Explore · Исследовать
How the CPU handles an interrupt · Как процессор обрабатывает прерывание
Step through an interrupt. The CPU pauses what it's doing, deals with the urgent event, then carries on exactly where it left off — which is how one processor juggles the keyboard, printer and timer at once. · Процессор останавливает текущую работу, обрабатывает срочное событие, затем продолжает ровно с того места, где остановился — именно так один процессор одновременно управляет клавиатурой, принтером и таймером.
central processing unit/ˈsentrəl ˈprəʊsesɪŋ ˈjuːnɪt/
центральный процессор
programming language/ˈprəʊɡræmɪŋ ˈlæŋɡwɪdʒ/
язык программирования
high-level language/haɪ ˈlevl ˈlæŋɡwɪdʒ/
язык высокого уровня
low-level language/ləʊ ˈlevl ˈlæŋɡwɪdʒ/
язык низкого уровня
machine code/məˈʃiːn kəʊd/
машинный код
assembly language/əˈsemblɪ ˈlæŋɡwɪdʒ/
язык ассемблера
specific/spəˈsɪfɪk/
конкретные
translator/trænˈsleɪtə/
переводчик
4.2
Programming languages · Языки программирования
Syllabus · Программа
English
Candidates should be able to:
Notes and guidance
1 Explain what is meant by a high-level language and a low-level language, including the advantages and disadvantages of each
• Advantages and disadvantages include: – ease of reading and writing code, e.g. low-level is hard to read – ease of debugging code – machine independence – direct manipulation of hardware
2 Understand that assembly language is a form of low-level language that uses mnemonics, and that an assembler is needed to translate an assembly language program into machine code
3 Describe the operation of a compiler and an interpreter, including how high-level language is translated by each and how errors are reported
• A compiler translates the whole code at once before executing it, producing an executable file • An interpreter translates and executes the code line-by-line • A compiler provides an error report for the whole code if errors are detected • An interpreter stops execution when an error is found
4 Explain the advantages and disadvantages of a compiler and an interpreter
• Including an understanding that an interpreter is mostly used when developing a program and a compiler is used to translate the final program
5 Explain the role of an IDE in writing program code and the common functions IDEs provide
1 Объясните, что понимается под языком высокого уровня и языком низкого уровня, включая преимущества и недостатки каждого
• Преимущества и недостатки включают: – простоту чтения и написания кода, например, язык низкого уровня трудно читать – простоту отладки кода – независимость от машины – прямое управление аппаратным обеспечением
2 Поймите, что ассемблерный язык является формой языка низкого уровня, использующего мнемоники, и что для перевода программы на ассемблерном языке в машинный код необходим ассемблер
3 Опишите работу компилятора и интерпретатора, включая то, как каждый из них переводит код высокого уровня и как сообщается об ошибках
• Компилятор переводит весь код целиком перед его выполнением, создавая исполняемый файл • Интерпретатор переводит и выполняет код построчно • Компилятор предоставляет отчет об ошибках для всего кода, если обнаружены ошибки • Интерпретатор останавливает выполнение при обнаружении ошибки
4 Объясните преимущества и недостатки компилятора и интерпретатора
• Включая понимание того, что интерпретатор чаще используется при разработке программы, а компилятор используется для перевода финальной версии программы
5 Объясните роль IDE при написании программного кода и типичные функции, предоставляемые IDE
• Включая: – редакторы кода – среду выполнения – трансляторы – диагностику ошибок – автодополнение – автокоррекцию – форматирование кода
Source: Cambridge International syllabus · Источник: Программа Cambridge International
English
All computers process data using the central processing unit 中央处理器 (CPU). To make the CPU do work, people write programs in a programming language 编程语言. There are two kinds.
High-level languages
A high-level language 高级语言 is written in words that look a bit like English (for example Python). It is:
easy for people to read, write and fix;
independent of the computer — the same program can run on different types of computer.
Low-level languages
A low-level language 低级语言 is close to what the hardware actually uses. It includes:
machine code 机器码 — instructions written in binary (0s and 1s), which the CPU runs directly;
assembly language 汇编语言 — machine code written with short word codes (mnemonics) instead of binary.
A low-level language relates to the specific 特定的 type of CPU, so a program written for one CPU may not run on another. It is used when the programmer needs full control of the hardware or very fast, small code.
Русский
Все компьютеры обрабатывают данные с помощью центрального процессора (ЦП). Чтобы заставить ЦП выполнять задачи, люди пишут программы на языках программирования. Существует два вида.
Языки высокого уровня
Язык высокого уровня написан словами, напоминающими английский (например, Python). Он:
прост для чтения, написания и исправления людьми;
независим от компьютера — одна и та же программа может работать на различных типах компьютеров.
Языки низкого уровня
Язык низкого уровня близок к тому, что фактически использует аппаратное обеспечение. Он включает в себя:
машинный код — инструкции, записанные в двоичном формате (нулях 0 и единицах 1), которые ЦП выполняет непосредственно;
ассемблер — машинный код, записанный с использованием коротких словесных кодов (мнемоник) вместо двоичного кода.
Язык низкого уровня относится к конкретному типу ЦП, поэтому программа, написанная для одного ЦП, может не работать на другом. Он используется, когда программисту требуется полный контроль над аппаратным обеспечением или очень быстрый и компактный код.
Языки высокого уровня близки к человеческому языку и работают на любом компьютере; языки низкого уровня (ассемблер и машинный код) близки к аппаратному обеспечению и привязаны к одному типу ЦП
Classify concrete examples by the computing idea they demonstrate. · Классифицируйте конкретные примеры по вычислительной идее, которую они демонстрируют.
The CPU can only run machine code. A high-level program must first be changed into machine code. The software that does this is a translator 翻译程序. There are three types: a compiler and an interpreter (for high-level code), and an assembler (for low-level code).
Compiler
A compiler translates the whole program into machine code before it is run. After translating, the machine code can be run many times without translating again.
translation happens once, in full;
it reports all the errors together, at the end of translating;
the finished program runs fast and does not need the compiler to run.
Interpreter
An interpreter 解释器 translates and runs the program one line at a time.
it stops at the first error it finds, which helps when testing;
the program runs more slowly, because it is translated each time it runs;
the interpreter must be present every time the program runs.
Compiler
Interpreter
Translates
the whole program at once
one line at a time
Errors
all reported at the end
stops at the first error
Speed of finished program
faster
slower
Needed to run later?
no
yes
Use a compiler when you want to share a fast, finished program. Use an interpreter when you are writing and testing a program and want to find errors easily.
Assembler
An assembler 汇编器 translates a low-level assembly-language program (written in mnemonics such as LDA, ADD) into machine code. Each mnemonic becomes one machine instruction – a direct one-to-one translation, unlike a compiler or interpreter, which work on high-level code.
Worked example. A team is writing a program. While developing it they want to find and fix errors quickly; when they ship it they want customers to run it fast without seeing the source code. Which translator suits each stage? While developing, use an interpreter: it translates and runs one line at a time and stops at the first error, so a mistake is easy to locate. To ship, use a compiler: it translates the whole program once into machine code, which then runs quickly with no translator present, and the customer receives only the executable rather than the source. The two are not rivals - name the stage and give the reason, because "a compiler is faster" on its own earns nothing.
Русский
ЦП может выполнять только машинный код. Программу на языке высокого уровня необходимо сначала преобразовать в машинный код. Программное обеспечение, выполняющее эту задачу, называется транслятором. Существует три вида: компилятор и интерпретатор (для кода высокого уровня), а также ассемблер (для кода низкого уровня).
Компилятор
Компилятор переводит всю программу в машинный код до ее запуска. После перевода машинный код можно выполнять многократно без повторного перевода.
перевод происходит один раз полностью;
он выводит все ошибки вместе, в конце процесса перевода;
готовая программа работает быстро и не требует наличия компилятора для запуска.
Интерпретатор
Интерпретатор переводит и выполняет программу по одной строке за раз.
он останавливается на первой найденной ошибке, что помогает при тестировании;
программа работает медленнее, так как она переводится каждый раз при запуске;
интерпретатор должен присутствовать каждый раз при запуске программы.
Компилятор
Интерпретатор
Переводит
всю программу сразу
построчно
Ошибки
сообщаются в конце
программа останавливается на первой ошибке
Скорость готовой программы
быстрее
медленнее
Требуется ли для последующего запуска?
нет
да
Используйте компилятор, когда хотите распространить быструю готовую программу. Используйте интерпретатор, когда пишете и тестируете программу и хотите легко находить ошибки.
Ассемблер
Ассемблер переводит программу на языке ассемблера низкого уровня (написанную с использованием мнемоник, таких как LDA, ADD) в машинный код. Каждая мнемоника становится одной машиноинструкцией — прямой перевод «один к одному», в отличие от компилятора или интерпретатора, которые работают с кодом высокого уровня.
Компилятор переводит всю программу один раз в машинный код; интерпретатор переводит и выполняет по одной строке за раз
Разобранный пример. Команда пишет программу. В процессе разработки им нужно быстро находить и исправлять ошибки; при выпуске продукта они хотят, чтобы клиенты запускали его быстро, не видя исходного кода. Какой транслятор подходит для каждого этапа? При разработке используйте интерпретатор: он переводит и выполняет по одной строке за раз и останавливается на первой ошибке, поэтому ошибку легко найти. Для выпуска используйте компилятор: он переводит всю программу один раз в машинный код, который затем работает быстро без наличия транслятора, и клиент получает только исполняемый файл, а не исходный код. Они не являются соперниками — укажите этап и дайте причину, так как ответ «компилятор работает быстрее» без уточнения контекста не дает очков.
providing a user interface/prəˈvaɪdɪŋ ə ˈjuːzə ˈɪntəfeɪs/
предоставление пользовательского интерфейса
managing peripherals/ˈmænɪdʒɪŋ pəˈrɪfərəlz/
управление периферийными устройствами
managing multitasking/ˈmænɪdʒɪŋ ˈmʌltitæskɪŋ/
управление многозадачностью
providing a platform/prəˈvaɪdɪŋ ə ˈplætfɔːm/
предоставление платформы
interpreter/ɪnˈtɜːprɪtə/
интерпретатор
assembler/əˈsemblə/
ассемблер
integrated development environment/ˈɪntɪɡreɪtɪd dɪˈveləpmənt enˈvaɪrənmənt/
среды разработки (IDE)
code editor/kəʊd ˈedɪtə/
редактор кода
run time environment/rʌn taɪm enˈvaɪrənmənt/
среда выполнения
error diagnostics/ˈerə ˌdaɪəɡˈnɒstɪks/
диагностика ошибок
auto-completion/ˈɔːtəʊ kəmˈpliːʃn/
автодополнение
auto-correction/ˈɔːtəʊ kəˈrekʃn/
автокоррекция
4.2
Integrated development environment (IDE) · Интегрированная среда разработки (IDE)
English
An integrated development environment 集成开发环境 (IDE) is software that helps you write programs. It puts many useful tools in one place:
a code editor 代码编辑器 — for typing in your program;
a run time environment 运行时环境 — for running the program to test it;
a translator — a compiler or interpreter to turn your code into machine code;
error diagnostics 错误诊断 — messages that help you find and understand mistakes;
auto-completion 自动补全 and auto-correction 自动纠错 — the IDE finishes or fixes code as you type;
prettyprinting 美化打印 — laying out the code neatly with colour and indentation so it is easy to read.
Русский
Интегрированная среда разработки (IDE) — это программное обеспечение, которое помогает вам писать программы. Она объединяет множество полезных инструментов в одном месте:
редактор кода — для ввода вашей программы;
среда выполнения — для запуска программы и её тестирования;
транслятор — компилятор или интерпретатор для преобразования вашего кода в машинный код;
диагностика ошибок — сообщения, помогающие найти и понять ошибки;
автодополнение и автоисправление — IDE дописывает или исправляет код по мере набора;
prettyprinting — аккуратное форматирование кода с использованием цветов и отступов для удобства чтения.
Исходный код в редакторе: IDE объединяет редактор, отладчик и инструменты запуска в одном месте
Hardware is the physical parts; software is the programs. System software runs the computer (OS, drivers, utilities); application software does a task for the user.
A compiler translates the whole program at once (the finished program runs fast, and all errors are reported at the end); an interpreter translates line by line (it stops at the first error, runs slower, and is needed every time).
High-level languages are close to English and run on any computer; low-level languages (assembly, machine code) are tied to one type of CPU.
An interrupt is a signal that makes the CPU stop, save its place, service the event, then carry on where it left off.
Learn the operating system's roles: managing files, memory, peripherals, multitasking, security and the user interface.
Русский
Аппаратное обеспечение (железо) — это физические компоненты; программное обеспечение — это программы. Системное ПО управляет компьютером (ОС, драйверы, утилиты); прикладное ПО выполняет задачи для пользователя.
Компилятор переводит всю программу целиком (готовая программа работает быстро, все ошибки сообщаются в конце); интерпретатор переводит построчно (он останавливается при первой ошибке, работает медленнее и нужен каждый раз).
Языки высокого уровня близки к английскому языку и работают на любом компьютере; языки низкого уровня (ассемблер, машинный код) привязаны к конкретному типу процессора.
Прерывание — это сигнал, который заставляет процессор остановиться, сохранить текущее место, обработать событие и затем продолжить работу с того же места.
Изучите роли операционной системы: управление файлами, памятью, периферийными устройствами, многозадачностью, безопасностью и пользовательским интерфейсом.
Interactive lessons on this topic · Интерактивные уроки по этой теме
Work through it step by step, with instant-check exercises. · Пройдите его шаг за шагом с упражнениями мгновенной проверки.
Pick one and the site follows you — notes, papers, videos and practice all open on it. · Выберите один, и сайт будет вести вас — конспекты, работы, видео и практика откроются там.
Type to search notes, lessons, code, vocabulary and past-paper questions across every subject. · Введите запрос для поиска заметок, уроков, кода, словаря и вопросов с реальных экзаменов по всем предметам.