Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Вт мар 19, 2024 09:06

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 89 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт янв 31, 2017 18:43 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
некорректный вопрос -> некорректный ответ
Код:
       \ 1  2   3  4   5  6  -- 7  8
: word \ a1 u1  a2 u2  a3 u3 -- a4 u4
  6/62-4+:8 /8h:7 /374V /52+74+62-V /78
;

\ h == ALLOCATE THROW
\ V == MOVE  : == TO
\ 1...9 положить на стек параметр 1...9

STARTLOG
S" XA" S" HELLO " S" XAWORD" word TYPE

LOG
HELLO WORD
Ok

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт фев 07, 2017 09:49 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
У кого есть коды операций под интел?
интересуют больше всего расширения sse и другие

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт фев 07, 2017 11:10 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Victor__v писал(а):
У кого есть коды операций под интел?
интересуют больше всего расширения sse и другие

Должно всё быть, наверное, здесь на странице.
Intel® 64 and IA-32 Architectures Software Developer Manuals


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт фев 07, 2017 13:28 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
Виктор Юров. Assembler. Специальный справочник
http://asm-book.narod.ru/LiteraturaKnigiAssemblerAssembler_Spetsialnyi_spravochnik.html

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт мар 07, 2017 17:13 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Кто знает можно ли с форта передавать команды через ssh?
Пробовал в наглую сокетами через 22 порт. Сервер отрубил.
Как сделать?

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вт мар 07, 2017 18:22 
Не в сети
Аватара пользователя

Зарегистрирован: Вт авг 12, 2008 03:18
Сообщения: 327
Откуда: Москва
Благодарил (а): 36 раз.
Поблагодарили: 7 раз.
может и неуместно. Форт программа генерирует команды для стандартного
ssh клиента. А ssh клиент сам разбирается с техникой.
Еще можно curl использовать.

_________________
Линукс решает, винда глотает.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Чт мар 09, 2017 20:20 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Есть ли на форуме тема по недокументированным эффектам ассемблеров?
Наткнулся недавно просто на подобную вещь.
К примеру, imul ecx дополнительно сжирает значение из указанного регистра, чего не должно быть по логике
другой оп.код этим не грешит imul eax ecx

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Чт мар 09, 2017 21:19 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
Victor__v писал(а):
К примеру, imul ecx дополнительно сжирает значение из указанного регистра, чего не должно быть по логике

С чего вы взяли, у меня все в ECX сохраняется
Код:
: imul_ecx
  *C
-;

: test_imul_ecx
  $ 5 A=# 
  C=A  \ в ECX стало 5
  C++  \ в ECX стало 6
  D^D
  *C     \ 5*6=30  в EAX стало 30
  *C     \ 30*6      в EAX стало 180
;

10 test_imul_ecx

STARTLOG

SEE test_imul_ecx
SEE imul_ecx


LOG
CODE test_imul_ecx
5D391F C7C005000000     MOV     EAX , # 5
5D3925 8BC8             MOV     ECX , EAX
5D3927 41               INC     ECX
5D3928 33D2             XOR     EDX , EDX
5D392A F7E9             IMUL    ECX
5D392C F7E9             IMUL    ECX
5D392E C3               RET     NEAR
END-CODE
( 16 bytes, 7 instructions )


CODE imul_ecx
5D3903 F7E9             IMUL    ECX
END-CODE
( 2 bytes, 1 instructions )

Ok ( 180 )

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Чт мар 09, 2017 22:16 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Сейчас перепроверил.
Работает нормально.
Кстати, MOVr-im имеет свой более короткий опкод

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Пт мар 10, 2017 09:23 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июл 20, 2006 11:31
Сообщения: 2168
Откуда: Екб
Благодарил (а): 0 раз.
Поблагодарили: 41 раз.
Victor__v писал(а):
Кстати, MOVr-im имеет свой более короткий опкод

Ну да, короче в байтах, а по времени инструкция такая же. На ПК память в этом случае можно не экономить.

_________________
С уважением, chess


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Пт мар 10, 2017 21:13 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
По времени да. Но больший шанс кеш-попадания всей программы с данными в целом

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Вс мар 12, 2017 15:53 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Нужен мануал по qt3 или gtk касательно вызовов из dll/so без всякой ООП-мути. ( что вызывать, в каком порядке, label, button и т.д). И примеры ещё желательно. На форте, или на любом другом языке, коий можно переложить на форт ( т.е не С++, чистый си подойдёт )

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Пт мар 17, 2017 09:05 
Не в сети

Зарегистрирован: Чт янв 07, 2016 19:14
Сообщения: 1285
Благодарил (а): 3 раз.
Поблагодарили: 18 раз.
Продолжаю список хотелок
Может кто-нибудь мне объяснить мне формат числа с плавающей точкой под 32 бита?

_________________
Цель: сделать 64-битную Нову под Винду


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Пт мар 17, 2017 11:34 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Victor__v писал(а):
Продолжаю список хотелок
Может кто-нибудь мне объяснить мне формат числа с плавающей точкой под 32 бита?

Знак (1 бит), порядок (8 бит), мантисса (23 бита). В принципе, есть в огромном ассортименте. Единственная тонкость может быть в том, что в мантиссе 24 бита, но старший бит мантиссы не хранится, потому что он всегда равен 1. Если не равен, мантисса двигается до тех пор, пока не станет равен.

1 = 0x3f80 0000 = 0 111 1111 1000 (далее нули) - знак 0, далее порядок 127, далее мантисса нули, но с учетом нехранящейся единички она 100000..... Таким образом, порядок имеет смещение - чтобы представить 1, порядок равен 127.

Обычно формат сам по себе не требуется, если только не стоит задача разработать аппаратный вычислитель. В сопроцессоре есть полный набор команд для работы и преобразований. К тому же сопроцессор работает всегда с внутренним 80-битным форматом, а 32 и 64 бита использует только для хранения в памяти с соответствующим преобразованием.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: хотелки
СообщениеДобавлено: Сб мар 18, 2017 10:45 
Не в сети
Аватара пользователя

Зарегистрирован: Вт фев 17, 2009 19:58
Сообщения: 112
Откуда: Барнаул
Благодарил (а): 21 раз.
Поблагодарили: 16 раз.
Victor__v писал(а):
Нужен мануал по qt3 или gtk касательно вызовов из dll/so без всякой ООП-мути. ( что вызывать, в каком порядке, label, button и т.д). И примеры ещё желательно. На форте, или на любом другом языке, коий можно переложить на форт ( т.е не С++, чистый си подойдёт )
Много информации по "qt3 или gtk касательно вызовов из dll/so без всякой ООП-мути" можно найти в разделе форума http://fforum.winglion.ru/viewtopic.php?f=34&t=2696&start=75 и конкретно у MGW ( http://fforum.winglion.ru/memberlist.php?mode=viewprofile&u=338 )

Есть статья по Calling conventions (ссылка внизу) > Раздел "8 Name mangling"
В статье есть подробная таблица с кодами для разных компиляторов следущего вида:
Код:
Table 9. Type codes
|-------------------------------------------------------------------|
| type | Microsoft | Borland | Watcom | Gnu2  | Gnu3-4  | Gnu4      |
|                                             | ABI v.3 | ABI v.4+  |
|-------------------------------------------------------------------|
| void | X         | v       | v      | v     | v       | v         |
| bool | _N        | 4bool   | q      | b     | b       | b         |
| char | D         | c       | a      | c     | c       | c         |
и т. д.

Так же есть коды для сложных типов (как классы). Имея подобную информацию можно создать библиотеку для конвертирования имен вида ?show@QWidget@@QAEXXZ в адекватные исходные имена C++.

Calling conventions
for different C++ compilers and operating systems

By Agner Fog. Technical University of Denmark.
Copyright © 2004 - 2014. Last updated 2014-08-07.

Contents
    1 Introduction . 3
    2 The need for standardization. 5
    3 Data representation. 6
    4 Data alignment 8
    5 Stack alignment. 9
    6 Register usage 10
    6.1 Can floating point registers be used in 64-bit Windows? . 13
    6.2 YMM vector registers 14
    6.3 ZMM vector registers 15
    6.4 Register usage in kernel code. 15
    7 Function calling conventions . 16
    7.1 Passing and returning objects. 20
    7.2 Passing and returning SIMD types 23
    8 Name mangling . 25
    8.1 Microsoft name mangling 29
    8.2 Borland name mangling 34
    8.3 Watcom name mangling . 35
    8.4 Gnu2 name mangling 36
    8.5 Gnu3-4 name mangling 38
    8.6 Intel name mangling for Windows . 40
    8.7 Intel name mangling for Linux . 41
    8.8 Symantec and Digital Mars name mangling 41
    8.9 Codeplay name mangling . 41
    8.10 Other compilers 42
    8.11 Turning off name mangling with extern "C" . 42
    8.12 Conclusion 43
    9 Exception handling and stack unwinding . 43
    10 Initialization and termination functions . 44
    11 Virtual tables and runtime type identification 44
    12 Communal data. 45
    13 Memory models. 45
    13.1 16-bit memory models 45
    13.2 32-bit memory models 46
    13.3 64-bit memory models in Windows . 46
    13.4 64-bit memory models in Linux and BSD 46
    13.5 64-bit memory models in Intel-based Mac (Darwin) 46
    14 Relocation of executable code. 47
    14.1 Import tables. 49
    15 Object file formats . 49
    15.1 OMF format. 49
    15.2 COFF format. 50
    15.3 ELF format 51
    15.4 Mach-O format 51
    15.5 a.out format. 52
    15.6 Comparison of object file formats 52
    15.7 Conversion between object file formats. 52
    15.8 Intermediate file formats . 52
    16 Debug information. 53
    17 Data endian-ness 53
    18 Predefined macros 53
    19 Available C++ Compilers . 55
    19.1 Microsoft. 55
    19.2 Borland . 55
    19.3 Watcom 55
    19.4 Gnu. 55
    19.5 Digital Mars. 55
    19.6 Codeplay 55
    19.7 Intel. 55
    20 Literature. 56
    20.1 ABI's for Unix, Linux, BSD and Mac OS X (Intel-based) 56
    20.2 ABIs for Windows 56
    20.3 Object file format specifications. 57
    21 Copyright notice 57
    22 Acknowledgments . 57

Ссылки:


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 89 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB