Руководство по встроенному языку

embedded c tutorialYou’re surrounded by hundreds of electronic devices today that would have looked out of place even a few decades ago, from the TV and the DVD player to the microwave and digital camera. Most of us think these to be ordinary devices that perform simple functions. But have you ever wondered how they work? As simple as these devices seem on the surface, they each have complex microprocessors (or microcontrollers) running inside their body. These microprocessors perform operations when requested. Like when you press the button on your digital camera to take a photo, the microprocessor will perform the functions necessary to capture the image and store it. The microprocessor’s functions are controlled, guided and overseen by the embedded system software. Just like your computer is controlled by the Operating System (like Windows), your camera is controlled by the embedded software. The embedded software and embedded hardware form an embedded system.

Embedded C is the most popular embedded software language in the world. Most embedded software is written in Embedded C. Embedded C is very similar to C- if you know C, you won’t have a problem learning Embedded C. This course can help you learn about the microprocessor environment. You’ll learn how to write embedded software programs, in low level assembly language. Embedded C takes it a step further and lets you write C like programs, suitable for the microprocessor environment. You can take this introductory course on C to learn more about high level programming.

In this basic Embedded C tutorial, we’re going to give you some info on the important embedded programming concepts. We’ll also demonstrate how Embedded C is different from ordinary C.

Basic Concepts of Embedded C and Embedded Programming

Embedded C, even if it’s similar to C, and embedded languages in general requires a different kind of thought process to use. Embedded systems, like cameras or TV boxes, are simple computers that are designed to perform a single specific task. They are also designed to be efficient and cheap when performing their task. For example, they aren’t supposed to use a lot of power to operate and they are supposed to be as cheap as possible. As an embedded system programmer, you will have simple hardware to work with. You will have very little RAM, ROM and very little processing power and stack space. Your goal is to write programs that are able to leverage this limited processing power for maximum effect. As an ordinary C programmer, you don’t have as many constraints.

The reason why most embedded systems use Embedded C as a programming language is because Embedded C lies somewhere between being a high level language and a low level language. Embedded C, unlike low level assembly languages, is portable. It can run on a wide variety of processors, regardless of their architecture. Unlike high level languages, Embedded C requires less resources to run and isn’t as complex. Some experts estimate that C is 20% more efficient than a modern language like C++. Another advantage of Embedded C is that it is comparatively easy to debug.

Embedded C Compilers

There are a variety of different compilers on the market, manufactured by different companies, that use Embedded C. One of the more popular ones is the Keil compiler. Because of this, Embedded C is also sometimes known as Keil C.

Embedded C has several keywords that are not present in C (learn more about the concept of keywords in this course). These keywords are associated with operations needed by microprocessors. You will need to be familiar with all of them to be able to write Embedded C programs. In this tutorial, we’ll show you some of the common ones, like data or idata, bdata and using:

idata/data: The data keyword will store a declared variable in the internal (i) memory of your microprocessor. Take a look at the example below:

unsigned char data a;

Here, the unsigned char declaration is like a normal C declaration. We just added the data keyword, which tells the microcontroller to store the unsigned char a in the internal data memory.

bdata: The bdata keyword lets you store a declared variable in the bit addressable memory. Take a look at this example:

unsigned char bdata a;

This is similar to the data declaration we showed you above. You have to access bdata variables in a different way, however.

Using: This keyword lets you execute a function by letting it access a register bank. There are three possible values: 1, 2 and 3.

void yourfunction () using 1
{
//statement
}

Here, your function called yourfunction will using the register bank at 1. Register banks are a part of the bank-switching technique used by microprocessors. This is an advanced concept, which we cover in more detail in our course.

Embedded C vs. Regular C

While we have discussed the main differences between Embedded C and Regular C, there is another major difference that drastically affects the structure of an Embedded C program and sets it apart from an ordinary C program. When you write a regular C program, you access it from within your operating system software, run it and then, when you’re done, you exit back into your operating system (learn more about writing your own C program with this course). With an Embedded C program, you have no operating system to fall back on! Your program will, for all intents and purposes, act like the operating system for the embedded device.

Obviously, your program can never stop running, as this will cause the device it’s supposed to be operating to crash. Therefore, every Embedded C program must have a structured loop that keeps it running constantly. You can use a simple for loop or a while loop to do that. A normal Embedded C program will follow this format, for example:

void main ()
{
//initialize
while (condition) {
//keep doing this
}
}

As you know, every C program starts with a main declaration. It’s the same with Embedded C. The only difference is that an infinite loop will have to be included, and it will contain the most important parts of the code.

Now that you’re familiar with the basics of embedded system programming and Embedded C go ahead and try it out for yourself!

Разработка встроенного ПО: введение

Время на прочтение
7 мин

Количество просмотров 12K

Привет, Хабр! Представляю вашему вниманию перевод статей Chris Svec, оригинал здесь. Публикуется с разрешения автора по лицензии CC-A-NC-ND.

Embedded software engineering 101: введение

Я запускаю цикл статей по обучению разработке встроенного программного обеспечения. Мы начнем с описания простого микроконтроллера, и после того, как Вы поймете, как он работает, разовьем это до понимания работы относительно сложных систем, таких как Fitbit или Nest.
Я назвал эту серию Embedded Software Engineering 101, и она начинается с этой недели прямо здесь в этом блоге.

Продолжайте читать для дальнейших объяснений и подробностей.


Одни строительные блоки на других строительных блоках.

Я работаю со встроенными системами и разрабатываю микросхемы уже более 14 лет. Мне нравятся встроенные системы — железо, софт и ограничения, которые связывают их вместе.
Любительская электроника и такие идеи, как Arduino, Adafruit и Sparkfun дали возможность легко накидать что-то из железа и софта за выходные (или месяц, или семестр), создав что новое, интересное и может быть даже полезное.

Это здорово! Предоставление людям возможности созидать — изумительная штука; если бы я хотел выражаться выспренно, то с придыханием назвал бы это «демократизирующей технологией».

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

Я хочу учить людей, как писать встроенное ПО для такого рода систем. Я уже давно вынашивал эту идею курса/руководства/книги/блога «Embedded Software Engineering 101», и благодаря блогу Embedded.fm начинаю ее реализацию сейчас.

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

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

Embedded Software Engineering 101 предназначен для:

  1. Выпускников вузов в сфере компьютерных наук, компьютерной инженерии или электроники, интересующихся встроенными системами.
  2. Электронщиков-любителей, желающих более глубоко понять, как работает их система на Arduino, и узнать, как им двигаться дальше (и нужно ли!).
  3. Профессиональных программистов без опыта со встроенными системами, желающих сместиться вниз по технологическому стеку и понимать, как они работают.
  4. Инженеров, работающих со встроенными системами и желающих понять, чем занимаются их коллеги-программисты.

Что я имею в виду, говоря, что я «человек фундаментального типа»? Ричард Фейнман, физик-обладатель Нобелевской премии и отличный рассказчик, выразил это наилучшим образом: «Чего не могу воссоздать, того не понимаю».

Так вот, я не Фейнман, но я уверен, что лучший способ понять систему — это начать с основ. Вооруженные этим пониманием, вы сможете создавать простые встроенные системы с простым софтом. И поняв сначала очень простую программу, вы сможете развивать это, создавая более сложное ПО по мере роста опыта.

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

Конечно мы должны задаться вопросом — где правильный уровень чтобы начать с этих самых «основ»? Транзисторы и логические вентили? Нет, это слишком низкий уровень для старта со встроенным ПО. Подключение к распространенным датчикам? Нет, это слишком высокий уровень, требуется слишком много знаний чтобы начать с этого.

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

Так что с этого мы и начнем в следующей статье.

Предупреждение о предвзятости: в прошлой жизни я был архитектором/разработчиком процессоров. Начать этот цикл с понимания как работает ЦПУ может быть не лучшим способом для понимания встроенных систем, но именно так работает мой мозг. Обязательно попробуйте другие курсы/руководства и т.д., если не станете понимать этот после нескольких статей.

Embedded software engineering 101: основы микроконтроллера

Мы начнем наше путешествие Embedded Software Egineering 101 со скромного микроконтроллера. Микроконтроллер (или микропроцессор) это основной строительный блок всех вычислительных систем, встроенных и прочих.

МК кажется довольно сложным, но он состоит из трех простых вещей: инструкции, регистры и память. Инструкции это те штуки, которые микроконтроллер знает как выполнять. Простой МК умеет выполнять не так уж много — у него может быть например 20 или 30 инструкций. В дальнейшем в этом цикле я буду использовать микроконтроллер MSP430 от Texas Instruments, у которого только 27 инструкций.


Просто фотография МК (TI MSP430F5529)

Эти 27 инструкций — единственное, что MSP430 умеет делать. Он может сложить два числа, вычесть из одного числа другое, переместить числа с одного места в другое или выполнить 24 другие простые операции. 27 операций может показаться недостаточно чтобы сделать что-либо полезное, но на самом деле их хватит с избытком, чтобы выполнить любую мыслимую программу.

Хорошо, значит у микроконтроллера есть инструкции, которые делают что-то с числами. Но где находятся эти числа? Регистры и память! Инструкции оперируют числами, которые хранятся в регистрах и памяти.

Регистры это очень быстрое хранилище, содержащее числа, которыми оперируют инструкции. Можно думать о них, как об используемом инструкциями блокноте. МК содержит немного регистров, обычно 8-32. Например, у MSP430 16 регистров.

Память это тоже хранилище для чисел, но она гораздо объемнее и медленнее чем регистры. У микроконтроллера может быть 64 кБ, 256 кБ или даже более 1 МБ памяти. У MSP430F5529 около 128 кБ памяти; это более чем в 8000 раз превосходит количество его регистров!

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

Давайте рассмотрим вымышленный, но характерный пример микроконтроллера.

Пусть скажем у нашего МК 4 регистра и 8 ячеек памяти. Регистры обычно называют как-нибудь креативно, например «R0», «R1» и т.д., поступим и мы так же. На ячейки памяти обычно ссылаются по их номерам, также называемым адресами памяти, начиная нумерацию с 0. Вот так будут выглядеть наши регистры и память:

И теперь я помещу в них некоторые значения:

Теперь нашему вымышленному микроконтроллеру нужны какие-нибудь инструкции.
Совокупность инструкций, которые знает МК, называется его набором инструкций. Пусть скажем в наборе будет три инструкции: ADD (сложить), SUB (сокращение от «subtract» — вычесть) и MOVE (переместить). Инструкции должны получать откуда-то числа, которыми они оперируют, и также помещать куда-то свои результаты, так что некоторые из них содержат информацию о том, где находятся входные и выходные данные.

Пусть, например, у нашей инструкции ADD два источника и один приемник данных, и все они должны быть регистрами. Руководство может описывать эту инструкцию примерно так:

ADD регИст, регПрм
Инструкция ADD добавляет значение регистра «регИст» к значению регистра «регПрм» и сохраняет результат в регистре «регПрм»
Резюме: регПрм = регИст + регПрм
Пример: ADD R1, R2 выполняет операцию R2 = R1 + R2

Это общепринято в инструкциях — использовать один из источников также в роли приемника, как делает инструкция ADD, используя регПрм в качестве и источника и приемника данных.

«ADD R1, R2» — это язык ассемблер для микроконтроллера, это нативный язык программирования МК.

Давайте определим SUB в том же стиле:

SUB регИст, регПрм
Инструкция SUB вычитает значение регистра «регИст» из значения регистра «регПрм» и сохраняет результат в регистре «регПрм»
Резюме: регПрм = регПрм — регИст
Пример: SUB R3, R0 выполняет операцию R0 = R0 — R3

И наконец пусть у инструкции MOVE один источник и один приемник, и либо:

  • оба аргумента регистры, либо
  • один — регистр и один — ячейка памяти.

Руководство по набору инструкций будет гласить:

1. MOVE регИст, регПрм
2. MOVE памИст, регПрм
3. MOVE регИст, памПрм
Инструкция MOVE копирует данные из аргумента Ист в аргумент Прм.
Резюме: есть три типа инструкции MOVE
1. регПрм = регИст
2. регПрм = мемИст
3. мемПрм = регИст
Пример: я покажу примеры инструкции MOVE ниже в этом посте.

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

Название «move» может создать впечатление, что операнд-источник инструкции уничтожается или очищается, но на самом деле он остается в покое, модифицируется только приемник.
Давайте пройдемся по нескольким примерам используя наш вымышленный микроконтроллер.
На старте наши регистры и память выглядят так:

Теперь выполним на МК следующую инструкцию:

ADD R1, R2

Она берет значение R1, складывает его со значением R2 и сохраняет результат в R2. Процессор выполняет большую часть инструкций за одну операцию, но я разобью выполнение каждой инструкции ADD, SUB и MOVE на несколько шагов стрелкой «=>» ведущей через замены (регистр/память => значение):

R2 = R1 + R2 =>
R2 = 37 + 100 =>
R2 = 137

После выполнения этой инструкции память неизменна, но регистры теперь выглядят следующим образом, с изменившимся значением написанным красным:

Обратите внимание, что R1 неизменен; изменился только регистр-приемник R2.
Следующей давайте попробуем инструкцию SUB:

SUB R3, R0

Она берет значение R3, вычитает его из значения R0, и сохраняет результат в R0:

R0 = R0 - R3 =>
R0 = 42 - 2 =>
R0 = 40

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

И наконец давайте попробуем пару версий инструкции MOVE:

MOVE R2, R0

Эта инструкция MOVE копирует в R0 значение R2:

R0 = R2 =>
R0 = 137

И теперь регистры выглядят так:

Дальше мы скопируем регистр в память:

MOVE R3, [3]

Эта инструкция MOVE копирует в ячейку памяти 3 значение R3. Квадратными скобками в нашем наборе инструкций обозначаются ячейки памяти.

[3] = R3 =>
[3] = 2

Регистры неизменны, но память меняется:

И для нашего последнего примера мы скопируем значение из памяти в регистр:

MOVE [6], R0

Здесь значение ячейки памяти 6 копируется в регистр R0:

R0 = [6] =>
R0 = 1

Память неизменна, а регистры теперь выглядят следующим образом:

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

Конечно я опустил множество деталей. Например, как МК получает инструкции для выполнения?

Есть ли более интересные инструкции, чем только простые математические и инструкции копирования? Память это то же самое, что RAM или флэш, или нет?

Мы ответим на эти вопросы в следующей статье.

посоветуйте книгу по описанию встроенного языка

Автор Fazan, 07 ноя 2016, 15:21

0 Пользователей и 1 гость просматривают эту тему.

спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.


Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

Не стал читать всё, чтобы понять, что вы не смогли скачать и почему.
Но книга «»Практическое пособие разработчика» 1С распространяется 1С совершенно бесплатно.
Например, на форуме поддержки этой книги http://devtrainingforum.v8.1c.ru
крупным написано красным поверх всего сверху:
«Скачать бесплатно книгу «Практическое пособие разработчика» и учебную платформу»

Много лет назад я покупал коробку с ней за 300 руб. В ней было несколько ДВД  и несколько книг на тысячи страниц. Я посчитал, что даже просто скопировать-распечатать на принтере сё мне в то время обошлось бы раз в 10 дороже

Да, и научитесь пользоваться поиском в интернете


Цитата: Геннадий ОбьГЭС от 29 янв 2017, 00:21

Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

Не стал читать всё, чтобы понять, что вы не смогли скачать и почему.
Но книга «»Практическое пособие разработчика» 1С распространяется 1С совершенно бесплатно.
Например, на форуме поддержки этой книги http://devtrainingforum.v8.1c.ru
крупным написано красным поверх всего сверху:
«Скачать бесплатно книгу «Практическое пособие разработчика» и учебную платформу»

Много лет назад я покупал коробку с ней за 300 руб. В ней было несколько ДВД  и несколько книг на тысячи страниц. Я посчитал, что даже просто скопировать-распечатать на принтере сё мне в то время обошлось бы раз в 10 дороже

Да, и научитесь пользоваться поиском в интернете

а если бы прочитали мое сообщение, то наверное поняли, что книгу я в нем упоминал не «Практическое пособие разработчика», а «1С:Предприятие 8.3. Руководство разработчика» (http://it-ebooks.ru/publ/1c/1c_v83_developer_guide_volume_1_and_2/21-1-0-767).
в данной вами ссылке упоминания об этой книге нет.


Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

https://cloud.mail.ru/public/AWk4/2YCEQoBTh


Цитата: alexandr_ll от 30 янв 2017, 08:26

Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

https://cloud.mail.ru/public/AWk4/2YCEQoBTh

Спасибо. По этой ссылке я заходил еще когда Вы в первый раз мне ее показали. как раз тогда меня и заинтересовала в этой книге глава № 4. Но что бы ее открыть нужно зарегистрироваться и перейти на сайт. Однако при загрузке сайта выскакивает такое сообщение: 404 Not Found.

Получается из этой книги доступны только первые страницы.


Цитата: Fazan от 30 янв 2017, 11:45

Цитата: alexandr_ll от 30 янв 2017, 08:26

Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

https://cloud.mail.ru/public/AWk4/2YCEQoBTh

Спасибо. По этой ссылке я заходил еще когда Вы в первый раз мне ее показали. как раз тогда меня и заинтересовала в этой книге глава № 4. Но что бы ее открыть нужно зарегистрироваться и перейти на сайт. Однако при загрузке сайта выскакивает такое сообщение: 404 Not Found.

Получается из этой книги доступны только первые страницы.

Странно, у меня в облаке эта книга формата pdf читается полностью. Вы ее скачали или нет? Напишите ваш e-mail, вышлю на почту. Правда, в самой книге по некоторым разделам указаны гиперссылки, ведущие на сайт ИТС 1С. Туда, конечно, доступ нужно получать отдельно.


Цитата: alexandr_ll от 30 янв 2017, 11:59

Цитата: Fazan от 30 янв 2017, 11:45

Цитата: alexandr_ll от 30 янв 2017, 08:26

Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

https://cloud.mail.ru/public/AWk4/2YCEQoBTh

Спасибо. По этой ссылке я заходил еще когда Вы в первый раз мне ее показали. как раз тогда меня и заинтересовала в этой книге глава № 4. Но что бы ее открыть нужно зарегистрироваться и перейти на сайт. Однако при загрузке сайта выскакивает такое сообщение: 404 Not Found.

Получается из этой книги доступны только первые страницы.

Странно, у меня в облаке эта книга формата pdf читается полностью. Вы ее скачали или нет? Напишите ваш e-mail, вышлю на почту. Правда, в самой книге по некоторым разделам указаны гиперссылки, ведущие на сайт ИТС 1С. Туда, конечно, доступ нужно получать отдельно.

я ее скачал. по нужному мне разделу действительно гиперссылка  ведет на сайт ИТС 1С. Получается что данный раздел для меня не доступен. а как доступ получить на сайт? наверное платно?

Добавлено: 30 янв 2017, 12:21


вот сейчас еще раз попробывал по гиперссылке пройти — «Страница не найдена».

Добавлено: 30 янв 2017, 12:27


Цитата: alexandr_ll от 30 янв 2017, 11:59

Цитата: Fazan от 30 янв 2017, 11:45

Цитата: alexandr_ll от 30 янв 2017, 08:26

Цитата: Fazan от 28 янв 2017, 23:16
спасибо большое за советы. рассмотрел каждый из них в отдельности.
в содержании книги 1С:Предприятие 8.3. Руководство разработчика. увидел целый раздел, описывающий язык 1с. где то читал что, двухтомник этой книги идет вместе с приобретаемой 1с.
в инете скачал скан этой книги. посмотрел — в разделе о языке много информации, по которой у меня возникло очень много вопросов.
но проблема в том, что скан книги оставляет желать лучшего. в некоторых местах очень плохо читается. если распечатать будет еще хуже.
подскажите, может у кого есть нормальный скан или ссылка?
Помогите пожалуйста.
Заранее благодарен.

https://cloud.mail.ru/public/AWk4/2YCEQoBTh

Спасибо. По этой ссылке я заходил еще когда Вы в первый раз мне ее показали. как раз тогда меня и заинтересовала в этой книге глава № 4. Но что бы ее открыть нужно зарегистрироваться и перейти на сайт. Однако при загрузке сайта выскакивает такое сообщение: 404 Not Found.

Получается из этой книги доступны только первые страницы.

Странно, у меня в облаке эта книга формата pdf читается полностью. Вы ее скачали или нет? Напишите ваш e-mail, вышлю на почту. Правда, в самой книге по некоторым разделам указаны гиперссылки, ведущие на сайт ИТС 1С. Туда, конечно, доступ нужно получать отдельно.

при регистрации на их сайте, было указано что мне предоставляется бесплатный доступ на 7 дней (сейчас около моего профиля на сайте написаноerin007@mail.ru доступ до 04.02.2017.
получается, и доступ есть.
но почему то «страница не найдена».
можете у себя попробовать этот раздел скачать (раздел 4)?


при регистрации на их сайте, было указано что мне предоставляется бесплатный доступ на 7 дней (сейчас около моего профиля на сайте написаноerin007@mail.ru доступ до 04.02.2017.
получается, и доступ есть.
но почему то «страница не найдена».
можете у себя попробовать этот раздел скачать (раздел 4)?
[/quote]
Гиперссылки в книге уже устарели и скачать какой-либо раздел с сайта невозможно.
Тем не менее на стр. 76-101 глава 4 представлена достаточно подробно. По отдельным вопросам придется обращаться на сайт ИТС, тем более, что доступ у вас есть.


спасибо. я разобрался. на сайте нашел эту книгу и распечатал нужную мне главу.


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

подскажите также, может где то в других книгах или инет ресурсах есть задачки для прокачки навыков алгоритмирования на языке 1с? конечно желательно с правильными ответами для проверки.

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


Теги:

  • Форум 1С

  • Форум 1С — ПРЕДПРИЯТИЕ 8.0 8.1 8.2 8.3 8.4

  • Конфигурирование, программирование в 1С Предприятие 8

  • посоветуйте книгу по описанию встроенного языка

Похожие темы (5)

Рейтинг@Mail.ru

Rambler's Top100

Поиск

Главная фишка языка 1С — весь программный код пишется на русском языке! Цветовое оформление в примерах полностью соответствует раскраске программного кода в среде 1С: Предприятие 8.

КОНСТРУКЦИЯ ЯЗЫКА 1С ПРИМЕЧАНИЕ
//Это комментарий Так оформляются комментарии. Комментарий — это подсказки, пометки разработчика, которые помогают разобраться или вспомнить логику работы программного кода. Каждая новая строка комментария должна начинаться с символов //.
   
Перем ФИО; Явное объявление переменной. ФИО — имя переменной.
   
А = 3; Переменную можно не объявлять явно. При первом присвоении значения система создает данную переменную.
   
ЭтоЧисло = 23.5+12*2; Переменной ЭтоЧисло присваивается числовое значение.  С данными числового типа можно выполнять арифметические операции: сложение, вычитание, умножение и деление. В качестве разделителя целой и дробной части используется точка! 
   

А = —0.123

Числовые значения могут быть отрицательными.
   

А = (2+7) * 3;   // в результате А=27

В = 2 * ((2+7) — 4); // в результате В = 10
 

Приоритет выполнения арифметических операций:

А = Сначала вычисляем 2 + 7, затем полученное значение умножаем на 3;

В = Сначала вычисляем 2 + 7, затем от полученного значения отнимаем 4, затем полученное значение умножаем на 2.

   
ЭтоСтрока = «Пугачева»; Переменной ЭтоСтрока присваиваем строковое значение. Значение строкового типа пишется в кавычках.
   

ФИО = «Пугачёва» + » » + «Алла» + » «+»Борисовна»;

// результат: ФИО = «Пугачёва Алла Борисовна»

Сложение строк. Символ » » мы прибавляем, чтобы между фамилией, именем и отчеством были пробелы. Вторая строчка кода это просто комментарий.
   
ДатаОтчета = ‘2013.01.01’; Переменная, которая хранит дату. Значение типа Дата записывается в одинарных кавычках.
   
ЧислоСекунд = ‘2013.01.02’ ‘2013.01.01’;
// ЧислоСекунд = 86400
Даты можно вычитать одну из другой. В результате получим разницу между датами, измеренную в секундах. В сутках 86 400 секунд (60 сек * 60 мин * 24 ч).
НоваяДата = ‘2013.01.01’+86400;
//НоваяДата = ‘2013.01.02’
К дате можно прибавлять и вычитать число. В результате к дате либо прибавится, либо отнимется число секунд.
   
Процедура РассчитатьЦену (Товар)
КонецПроцедуры
Простая процедура. Между словами Процедура и КонецПроцедуры записывается текст процедуры. 
   
Функция РассчитатьНалог(Сотрудник, НекаяДата)
   Возврат Налог;
КонецФункции
Функция должна возвращать результат в место ее вызова.
   
Если Доход > 20000 Тогда
    Результат = «Жить можно»;
Иначе
    Результат = «Так жить нельзя!»;
КонецЕсли;
Простое условие. После слова КонецЕсли должна быть точка с запятой, потому что так заканчивается оператор Если.
   

Результат = ?(Доход > 20000, «Жить можно ««Так

жить нельзя!»);

Сокращенное Если. Краткая запись предыдущего простого условия.
   
Если Доход > 20000 Тогда
    Результат = «Жить можно»;

ИначеЕсли Доход > 10000 Тогда
    Результат = «Плохо»;

Иначе
    Результат = «Так жить нельзя!»;
КонецЕсли;

Множественное условие. Если первое условие не выполняется, то проверяется второе. Если ни одно из условий не выполняется то выполняется блок Иначе.
   
Если (Доход > 20000) И (КодКатегории = 2) Тогда
КонецЕсли;
Составное логическое выражение.
   
Пока Номер <= 15 Цикл
КонецЦикла;
Простой цикл Пока (с неизвестным числом повторений). После слова КонецЦикла должна быть точка с запятой, потому что так заканчивается оператор Пока.
   
Для Номер = 1 По 15 Цикл
КонецЦикла;
Простой цикл Для (цикл с известным числом повторений).
   
Для каждого  СтрокаТаблицы Из Таблицы Цикл

КонецЦикла;
 

Еще одна разновидность цикла. Оператор цикла Для каждого предназначен для циклического обхода коллекций значений (табличных частей справочников, документов и т.д.). При каждой итерации цикла возвращается новый элемент коллекции. Обход осуществляется до тех пор, пока не будут перебраны все элементы коллекции.
   
Пока <условие> Цикл
   Если <условие> Тогда
       Продолжить;
   КонецЕсли;
КонецЦикла;
Оператор Продолжить передает управление в начало цикла.
   
Пока <условие> Цикл
   Если <условие> Тогда
       Прервать;
   КонецЕсли;
КонецЦикла;
Оператор Прервать производит досрочный выход из цикла. Управление передается на операторы после цикла.

«Hello, 1C!»: пишем первую программу на языке программирования 1С

5 урок курса 1С Предприятие 8.2 для начинающих. Язык 1С

Уроки 1С Предприятие 8

Документы в 1С 8.3 (8.2)

Создание простейшей информационной базы — курс по программированию в 1С — 1С:Учебный центр №1

1c обработки. Как создать внешнюю обработку в 1с.

Введение — Знакомство с платформой «1C:Предприятие 8.3» — Курс 1С:Учебного центра №1

Процедуры и функции в 1С 8.3: чем они отличаются и как их использовать

Условные операторы в 1С и работа с обычной формой

Создание формы в 1С и работа с обработчиками

Также смотрите:

  • 1С макет текстовый документ
  • Простой бесплатный аналог 1С
  • Где таблицы в 1С
  • 1С бухгалтерия ключи
  • 1С запрос выбор когда тогда
  • Учет операций по лизингу в 1С
  • Поставить землю на баланс в 1С
  • Администрирование системы 1С предприятия 8
  • 1С табличный документ программно
  • Обработка прайс листов в 1С
  • 1С 8 3 кнопка выпадающий список
  • 1С создание документов на основании
  • 1С онлайн помощь
  • Таблица 1С бухгалтерия
  • Списание и оприходование товара в 1С

Понравилась статья? Поделить с друзьями:

А вот и еще наши интересные статьи:

  • Нексиум инструкция по применению суспензия для детей
  • Бромгексин инструкция по применению сироп взрослым при сухом кашле
  • Инструкция к телевизору philips 47pfl6097t 60
  • Морозильная камера атлант 7184 000 инструкция по применению
  • Доктор мом растирка для детей инструкция

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии