Студопедия — Рабочие задания. Схема для определения принадлежности выводных концов к одной фазе представлена на рисунке 1.
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Рабочие задания. Схема для определения принадлежности выводных концов к одной фазе представлена на рисунке 1.

Схема для определения принадлежности выводных концов к одной фазе представлена на рисунке 1.

 

 

Рисунок 1

Схема для определения одноименных выводов фазных обмоток представлена на рисунке 2.

рисунок 2

 

Результаты исследования и расчеты приведены в таблицах 1 и 2.

Таблица 1.

Соединение звездой

наблюдения вычисления
U1 I1 P1 M N t n s f2 cosj1 P2 h
В А Вт Н*м имп с об/мин % Гц - Вт %
          9,99 1495,5 0,3 15,01      
          9,95   7,5 376,9 0,87    
          9,94   8,6 432,6 0,87    
    3,8     10,10   13,3 663,4 0,83    
    4,4     9,78 1196,3 20,2 1012,27 0,76    

 

 

Таблица 2

наблюдения вычисления
U1 I1 P1 M N t n s f2 cosj1 P2 h
В А Вт Н*м имп с об/мин % Гц - Вт %
    0,4     9,95 1501,5 -0,1 -5 0,11    
    2,4     9,95 1471,3 1,9   0,5    
    3,6     9,95 1465,3 2,3   0,72    
    4,4     9,95   7,9   0,76    

Соединение треугольником

 

 

Расчетные формулы:

 

P2=0.105M*n

f2=f1*s

Графики зависимостей смотри на рисунках ниже.


 

 

Соединение звездой.

 

 

Соединение треугольником.

 


 

 

Соединение звездой.


 

 

Соединение треугольником.

Введение

В данной лабораторной работе будет рассмотрена работа с байтами, подсчет единиц и нулей в заданных байтах. Все подробно описано и изложено в ходе работы.

 

Программное обеспечение

MacBook Air середина 2011 OS X Yosemite 10.10.5

Microsoft Office 2016 Mac beta version.

Консольные пакеты

sudo(права root)

nasm(свободное ПО)

bash(эмулятор терминала)

nano(редактирование)

screenme(c ключем -all)

 

Цели работы

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

Рабочие задания

1. Напишите программу, подсчитывающую количество единиц в заданном байте или слове:

;в сегменте данных  
A DB 01101011B или A DW 0010111110101001B
                 

2. Измените программу для подсчета нулей.

3. Задан массив байтов А из чисел со знаками. Напишите программу, подсчитывающую количество отрицательных элементов массива. Ваш любой вариант принимается. А теперь напишите с использованием команды TEST.

4. Измените программу для подсчета положительных элементов массива.

5. Напишите программу преобразования двух неупакованных BCD-чисел в слове памяти в упакованное BCD-число в регистре AL.

6. Напишите программу пересылки символов из одной строки в другую

; в сегменте данных    
str_source DB ‘Строка_пересылаемая’,’$’ ;строка-источник
str_dest DB 20 dup(?) ;строка-приемник

7. Напишите программу посимвольного (поэлементного) сравнения двух строк.

8. Напишите программу поиска заданного символа в заданной строке, осуществите замену этого символа на другой, введенный с клавиатуры или заранее определенный в памяти.

9. Напишите программу, которая сравнивает две строки и первый несовпавший элемент помещает в регистр AL.

10. Написать программу вычисления по формуле: y= (a+b)3 /(c-d)2.

 

Выполнение работы:

Для начала нужно написать программу количество единиц и нулей в байте. Перед началом работы проверим запущена ли нужная среда NASM. Для этого в консоли можно ввести nsm –v, тем самым попросив nasm показать свою версию. Если программа откликнется, значет процесс уже запущен в системе. Данное действие показано на рисунке №1

Рисунок №1

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

Рисунок №2

Рисунок №3

Результат ассемблирования и транслирование исходного кода показано на рисунке №4. А имеено выполнение прогаммного кода по подсчету едениц в байте.

 

Рисунок №4

Далее по той же аналогии считаем количество 0 в байтовай строке. Это продимонстрировано на рисунке №5

Рисунок №5

Так как не понятно что считает программа каждыую выходную переменную мы допишем. Итоговая программа показана на рисунке №6. Ошибка показанная на рисунке ниже “типичная” ошибка при обращении в память именно этой версии nasm. На оффициальном сайте develop.apple.com при возникновении данной и подобных ошибок установить вместо стандартной предложенную версию nasm. Данная проблема исправляется перезапуском программы.

Рисунок №6

По такой же аналогии ищем положительные и отрицательные числа массиве. Но откорректировав программу согласно данному заданию. Измененная часть показана на рисунке №7

Рисунок №7

Не дублируя один раз код, создадим 3 одинаковых массива и сделаем следующее: подсчитаем сумму элементов, Результат ассемблирования и выполнения кода показан на рисунке №8

Рисунок №8

Метод реализации программного кода, а имеено та часть где испоьзуется искомая команда, то есть команда TEST, показан на рисунке № 9

Рисунок №9

Далее напишем небольшую программу для сравнивания строк между собой. Основная часть программы(кусок кода) показано на рисунке №10, работоспособность Unix-исполняемого файла продемонстрировано на риунке №12 соответственно.

Рисунок №11

Блок с кодом в котором присутствеют сами строки для сравнения показан на рисунке №12

Рисунок №12

Результат сравнения показан на рисунке №13. Значение 0 показывает что при посимвольном сравнивании строк они идентичны. Для расширения программы возможно сделать явное указание на измененные символы.

Рисунок №13

Модифицировав программу вместо результата 0 будем делать поиск символа 1 строки из 2 строки. Результат показан на рисунке №14

Рисунок №14

Для повышения регистра в поиске символа мы будем использовать модуль vesa. А именно встраиваемый блог работы с символами и регистром. Также можем поместить в данном случае символ «С» в регистр AL.

Далее в заключение составим небольшую программу вычисления по формуле искомых значений. Так как неизвестных переменных 4 это: a, b, c, d. Так как вариация значений может быть очень обширная то мы будем использовать массивы и метод подбора, а именно значения от 0 до 1. Часть исходного кода, конкретнее сама функция показана на рисунке № 15

Рисунок №15

Звездочки указывают на ошибку подпрограммы показанную на рисунке №15. Ошибка в данной уравнении указывает на то что программа не могла разделить на 0. Реализовано очень просто. Созданный масив изначально весь имел вид * * * * *. Данные просто перезаписываются и кладутся в определенные ячейки перезаписывая данные с * на нужное значение. Итоговая(конечная) программа после ассемблирования и транс-лирования показана на рисунке №16.

Рисунок №16

 

Контрольные вопросы

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

2. Где находятся сомножители и результат при выполнении команды умножения?

3. Где находятся делимое, делитель и результат при выполнении команды деления?

4. В каком регистре хранится длина строки в цепочечных командах?

5. Как адресуются строковые операнды?

 

Ответы на вопросы

Заключение

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


 

Список литературы

1. wikiTaxi // Assembler NASM

2. wikiTaxi // Основные команды NASM

3. wikiTaxi // Ядро Darwin

4. wikiTaxi // Компиляция пакетов

 




<== предыдущая лекция | следующая лекция ==>
Выполнение работ | ОТБОР ФАКТОРОВ В МОДЕЛЬ МНОЖЕСТВЕННОЙ РЕГРЕССИИ. ОЦЕНКА ПАРАМЕТРОВ МОДЕЛИ

Дата добавления: 2015-10-15; просмотров: 628. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

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

Что происходит при встрече с близнецовым пламенем   Если встреча с родственной душой может произойти достаточно спокойно – то встреча с близнецовым пламенем всегда подобна вспышке...

Реостаты и резисторы силовой цепи. Реостаты и резисторы силовой цепи. Резисторы и реостаты предназначены для ограничения тока в электрических цепях. В зависимости от назначения различают пусковые...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Методы прогнозирования национальной экономики, их особенности, классификация В настоящее время по оценке специалистов насчитывается свыше 150 различных методов прогнозирования, но на практике, в качестве основных используется около 20 методов...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия