;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Periodic Table for KolibriOS
;;
;; Периодическая система химических элементов
;; Дмитрия Ивановича Менделеева
;; Авторы:
;; navanax [violetlab+rambler.ru]
;; Johnny_B [john+kolibrios.org]
;;
;; макрос для создания массива указателей на ASCIIZ-строки
include '..\..\..\macros.inc'
macro strtbl name,[string]
{
common
label name dword
forward
local lbl
dd lbl
forward
lbl db string,0
}
use32
org 0x0
db 'MENUET01' ; стандартный 8-байтовый заголовок для исполняемых файлов MeOS
dd 0x01 ; версия заголовка
dd START ; указатель на начало исполняемого кода
dd I_END ; размер образа
dd I_END+0x1000 ; требуемая память для приложения
dd I_END+0x1000 ; указатель на начала стека
dd 0x0 , 0x0 ; I_Param , I_Icon
;ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ И КОНСТАНТЫ
re_ID dd 0x00000001 ;для хранения номера текущего выводимого элемента
START:
mov eax,48
mov ebx,3
mov ecx,sc
mov edx,sizeof.system_colors
mcall
red:
call draw_window
still: ;основной цикл программы
push 10 ;ожидание события
pop eax
mcall
dec eax
je red
dec eax
jne button
key:
mov al,2
mcall
jmp still
button:
mov al,17 ;получаем ID нажатой кнопки
mcall
shr eax,8 ; eax=24-битный ButtonID
cmp eax,1 ;нажата ли "Закрыть" [x]
jne noclose
or eax,-1
mcall
noclose:
cmp eax,200
jne no_H
mov eax,1
no_H:
mov [re_ID],eax
;;
call draw_text
;;
jmp still
draw_window:
mov eax,12 ;begin drawing
xor ebx,ebx
inc ebx
mcall
; DRAW WINDOW
xor eax,eax
mov ebx,50*65536+555 ;x
mov ecx,30*65536+455 ;y
mov edx,[sc.work]
or edx,0x33000000 ;style
mov edi,caption
mcall
text_in_window:
mov eax,4 ;вывод текста
mov ecx,0x80000000 ;asciiz, ЦВЕТ !!!
mov ebx,40*65536+200 ;лантаноиды
mov edx,Lantanoid_text
mcall
add ebx,20 ;актиноиды
mov edx,Actinoid_text
mcall
mov ebx,150*65536+255
mov edx,number
mcall
add ebx,15
mov edx,name
mcall
add ebx,15
mov edx,eng_name
mcall
add ebx,15
mov edx,Atomic_massa
mcall
add ebx,15
mov edx,density
mcall
add ebx,15
mov edx,Step_okisl
mcall
add ebx,15
mov edx,Electrootr
mcall
add ebx,15
mov edx,T_pl
mcall
add ebx,15
mov edx,T_kip
mcall
add ebx,15
mov edx,Raspr
mcall
add ebx,15
mov edx,Otkrytie
mcall
; ВЫВОД НОМЕРОВ ПЕРИОДОВ
mov ebx,30*65536+43
mov edx,Period_text ;1
mcall
call @f ;2
call @f ;3
call @f ;4
call @f ;5
call @f ;6
call @f ;7
jmp Table
@@:
add ebx,20
add edx,4 ;т.к. строка = 4 байтам(с нулём)
mcall
ret
Table: ;Отрисовка таблицы в виде конопочек
table_row_1:
shl eax,1
mov ebx,50*65536+25
mov ecx,35*65536+20
mov edx,200
mov esi,0xE19123
mcall
He_:
mov ebx,491*65536+25
mov esi,0x0f0c314
mov edx,2
mcall
table_row_2:
Li:
mov ebx,50*65536+25
mov ecx,56*65536+20
mov esi,0xE19123
inc edx
mcall
Be:
mov ebx,76*65536+25
inc edx
mcall
B_:
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_2_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_2_loop
table_row_3:
Na:
mov ebx,50*65536+25
mov ecx,77*65536+20
mov esi,0xE19123
inc edx
mcall
mov ebx,76*65536+25
inc edx
mcall
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_3_loop:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_3_loop
Table_row_4:
K_:
mov ebx,50*65536+25
mov ecx,98*65536+20
mov esi,0xE19123
inc edx
mcall
Ca:
mov ebx,76*65536+25
inc edx
mcall
Sc:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_4_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_4_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_4_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_4_loop2
Table_row_5:
Rb_:
mov ebx,50*65536+25
mov ecx,119*65536+20
mov esi,0xE19123
inc edx
mcall
Sr_:
mov ebx,76*65536+25
inc edx
mcall
Y_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edi,8
Table_row_5_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_5_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_5_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_5_loop2
Table_row_6:
Cs_:
mov ebx,50*65536+25
mov ecx,140*65536+20
mov esi,0xE19123
inc edx
mcall
Ba_:
mov ebx,76*65536+25
inc edx
mcall
La_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,71
mov edi,8
Table_row_6_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_6_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,4
table_row_6_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_6_loop2
Table_row_7:
Fr_:
mov ebx,50*65536+25
mov ecx,161*65536+20
mov esi,0xE19123
inc edx
mcall
Ra_:
mov ebx,76*65536+25
inc edx
mcall
Ac_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
mcall
mov edx,103
mov edi,8
Table_row_7_loop1:
add ebx,26*65536
inc edx
mcall
dec edi
jns Table_row_7_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
mcall
mov edi,2
table_row_7_loop2:
add ebx,26*65536
inc edx
mcall
dec edi
jns table_row_7_loop2
row_1:
Cerium_:
mov ebx,102*65536+25
mov ecx,190*65536+20
mov edx,58
mov esi,0x73beeb
mcall
mov edi,12
row_1_loop:
add ebx,26*65536
inc edx
dec edi
mcall
jns row_1_loop
row_2:
dgfsfHe_:
mov ebx,102*65536+25
mov ecx,211*65536+20
mov edx,90
mcall
mov edi,12
row_2_loop:
add ebx,26*65536
inc edx
dec edi
mcall
jns row_2_loop
text_on_buttons:
text_row1:
;H
shr eax,1
mov ebx,62*65536+43
mov ecx,0x00000000
mov edx,Symbols
mov esi,3
mcall
;Ne
mov ebx,500*65536+43
add edx,3
mcall
text_row2_1:
mov ebx,60*65536+63
add edx,3
mcall
mov ebx,85*65536+63
add edx,3
mcall
text_row2_2:
mov ebx,374*65536+63
add edx,3
mcall
mov edi,4
text_row2_2_loop:
add ebx,25*65536
add edx,3
mcall
dec edi
jns text_row2_2_loop
text_row3_1:
mov ebx,60*65536+83
add edx,3
mcall
mov ebx,85*65536+83
add edx,3
mcall
text_row3_2:
mov ebx,374*65536+83
add edx,3
mcall
mov edi,4
text_row3_2_loop:
add ebx,25*65536
add edx,3
mcall
dec edi
jns text_row3_2_loop
text_row4:
mov ebx,60*65536+104
add edx,3
mcall
mov edi,16
text_row4_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row4_loop
text_row5:
mov ebx,60*65536+125
add edx,3
mcall
mov edi,16
text_row5_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row5_loop
text_row6:
mov ebx,60*65536+146
add edx,3
mcall
mov edi,16
text_row6_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row6_loop
text_row7:
mov ebx,60*65536+167
add edx,3
mcall
mov edi,9
text_row7_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row7_loop
mov edi,4
text_row7_loop2:
add ebx,24*65536
add edx,3
mcall
dec edi
jns text_row7_loop2
text_row8:
mov ebx,111*65536+197
add edx,3
mcall
mov edi,12
text_row8_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row8_loop
text_row9:
mov ebx,111*65536+217
add edx,3
mcall
mov edi,12
text_row9_loop:
add ebx,26*65536
add edx,3
mcall
dec edi
jns text_row9_loop
;; - короче выносим в отдельную процедуру
call draw_text
;;
finish:
mov eax,12 ;end drawing
mov ebx,2
mcall
ret
draw_text:
; 1 вывод порядкового номера [optmzd-mem]
; 2 вывод русского названия [optmzd-mem]
; 3 вывод английского названия [optmzd-spd]
; 4 вывод атомной массы [optmzd-spd]
; 5 вывод плотность [optmzd-mem]
; 6 вывод степень окисления [optmzd-mem]
; 7 вывод электроотрицательности [optmzd-spd]
; 8 вывод температура плавления [optmzd-mem]
; 9 вывод температура кипения [optmzd-mem]
;10 вывод распределение в земной коре [optmzd-mem]
;11 вывод имён первооткрывателей [optmzd-mem]
;; - закраска, что-бы не было наложения при прорисовке текста
mov eax,13
mov ebx,320*65536+210
mov ecx,255*65536+(15*11)
mov edx,[sc.work]
mcall
;;
push edi ; чтобы оптимизировать изменения ebx
; 1 вывод порядкового номера [optmzd-mem]
mov ebx,0x30000 ;выводить 3 цифры
mov ecx,[re_ID]
mov edx,320*65536+255
xor esi,esi
mov eax,47
mcall
;ВНИМАНИЕ! ЗДЕСЬ ЗАДАЁТСЯ ЦВЕТ ВСЕГО ОСТАЛЬНОГО ТЕКСТА! [сделано для сокращения кода на 20 байт :)))]
mov ecx,[sc.work_text] ; ЦВЕТ
or ecx,0x80000000 ; asciiz
mov eax,4 ; эта функция вызывается 10 раз! так что запишем 1 раз
; 2 вывод РУССКОЕ НАЗВАНИЕ [optmzd-mem]
mov edi,Rus_nazv ;указатель на начало массива указателей ;)
mov ebx,320*65536+255 ;здесь вносятся координаты, дальше будет лишь add ebx,15
call out_asciiz_item
xor ecx,ecx ;color
; 3 вывод английского названия [optmzd-spd]
mov edx,Elements
mov edi,[re_ID]
dec edi
mov esi,12 ;длина строки
imul edi,esi ;считаем указатель на нужную строку
add edx,edi
add ebx,15 ; увеличиваем y-координату текста на 15 пикселей
mcall
; 4 вывод атомной массы [optmzd-spd]
mov edx,MassNo
mov edi,[re_ID]
dec edi
mov esi,7 ;длина строки
imul edi,esi ;считаем указатель на нужную строку
add edx,edi
add ebx,15
mcall
mov ecx,0x80000000 ;asciiz, ЦВЕТ !!!
; 5 вывод ПЛОТНОСТЬ [optmzd-mem]
mov edi,Plotnost
call out_asciiz_item
; 6 вывод СТЕПЕНЬ ОКИСЛЕНИЯ [optmzd-mem]
mov edi,Step_ok
call out_asciiz_item
xor ecx,ecx ;color
; 7 вывод ЭЛЕКТРООТРИЦАТЕЛЬНОСТЬ [optmzd-spd]
mov edx,Electr
mov edi,[re_ID]
dec edi
mov esi,4 ;длина строки
shl edi,2
add edx,edi
add ebx,15
mcall
mov ecx,0x80000000 ;asciiz, ЦВЕТ !!!
; 8 вывод ТЕМПЕРАТУРА ПЛАВЛЕНИЯ [optmzd-mem]
mov edi,T_plavl
call out_asciiz_item
; 9 вывод ТЕМПЕРАТУРА КИПЕНИЯ [optmzd-mem]
mov edi,T_kipen
call out_asciiz_item
;10 вывод РАСПРЕДЕЛЕНИЕ В ЗЕМНОЙ КОРЕ [optmzd-mem]
mov edi,Rasprostr
call out_asciiz_item
;11 вывод имён первооткрывателей [optmzd-mem]
mov edi,First_Explore
call out_asciiz_item
pop edi ; он был сохранён в начале :)
ret
;функция выполняет набор действий для вывода информации
out_asciiz_item:
mov edx,[re_ID]
dec edx
shl edx,2 ;умножить на 4 (размер указателя)
mov edx,[edx+edi] ;указатель на строку в edx
add ebx,15
mcall
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; ОБЛАСТЬ ДАННЫХ ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;---- begin ---- Данные для ГЛАВНОГО окна --------------------------
caption db 'Периодическая система Д.И.Менделеева by [navanax] & [Johnny_B]',0
density db 'Плотность',0
Atomic_massa db 'Атомная масса',0
name db 'Название',0
eng_name db 'Англ. название',0
T_pl db 'Температура пл.',0
T_kip db 'Температура кип.',0
Electrootr db 'Электроотрицательность',0
Raspr db 'Распределение в земн. коре',0
Step_okisl db 'Степень окисления',0
Otkrytie db 'Открытие',0
number db 'Порядковый номер',0
Period_text:
db ' I',0
db ' II',0
db 'III',0
db ' IV',0
db ' V',0
db ' VI',0
db 'VII',0
Lantanoid_text db 'Лантаноиды',0
Actinoid_text db ' Актиноиды',0
;---- end ------ Данные для ГЛАВНОГО окна --------------------------
;*********************************************
; БАЗА ДАННЫХ ПО ХИМИЧЕСКИМ ЭЛЕМЕНТАМ
;*********************************************
;определимся, что кол-во элементов = 116. Ни больше, ни меньше!
;Каждый массив должен содержать 116 элементов,
;чтобы не было выхода за его пределы
;Английское название
Elements: ;116 элементов
db 'Hydrogen ' ; 1
db 'Helium '
db 'Lithium '
db 'Beryllium '
db 'Boron '
db 'Carbon '
db 'Nitrogen '
db 'Oxygen '
db 'Fluorine '
db 'Neon '
db 'Sodium '
db 'Magnesium '
db 'Aluminum '
db 'Silicon '
db 'Phosphorus '
db 'Sulfur '
db 'Chlorine '
db 'Argon '
db 'Potassium '
db 'Calcium ' ;20
db 'Scandium '
db 'Titanium '
db 'Vandium '
db 'Chromium '
db 'Manganese '
db 'Iron '
db 'Cobalt '
db 'Nickel '
db 'Copper '
db 'Zinc ' ;30
db 'Gallium '
db 'Germanium '
db 'Arsenic '
db 'Selenium '
db 'Bromine '
db 'Krypton '
db 'Rubidium '
db 'Strontium '
db 'Yttrium '
db 'Zirconium '
db 'Niobium '
db 'Molybdenum '
db 'Technetium '
db 'Ruthenium '
db 'Rhodium '
db 'Palladium '
db 'Silver '
db 'Cadmium '
db 'Indium '
db 'Tin ' ;50
db 'Antimony '
db 'Tellurium '
db 'Iodine '
db 'Xenon '
db 'Cesium '
db 'Barium '
db 'Lanthanum '
db 'Cerium '
db 'Praseodymium'
db 'Neodymium '
db 'Promethium '
db 'Samarium '
db 'Europium '
db 'Gadolinium '
db 'Terbium '
db 'Dysprosium '
db 'Homium '
db 'Erbium '
db 'Thulium '
db 'Ytterbium ' ;70
db 'Lutetium '
db 'Hafnium '
db 'Tantalum '
db 'Tungsten '
db 'Rhenium '
db 'Osmium '
db 'Iridum '
db 'Platinum '
db 'Gold '
db 'Mercury ' ;80
db 'Thallium '
db 'Lead '
db 'Bismuth '
db 'Polonium '
db 'Astatine '
db 'Radon '
db 'Francium '
db 'Radium '
db 'Actinum '
db 'Thorium ' ;90
db 'Protactinium'
db 'Uranium '
db 'Neptunium '
db 'Plutonium '
db 'Americium '
db 'Curium '
db 'Berkelium '
db 'Californium '
db 'Einsteinium '
db 'Fermium ' ;100
db 'Mendelevium '
db 'Nobelium '
db 'Lawrencium '
db 'Reserfordium'
db 'Dubnium '
db 'Siborgovium '
db 'Boronium '
db 'Hassium '
db 'Meithnerium '
db 'Darmstadium ' ;110
db 'Roentgenium '
db 'Ununbium '
db 'Ununtrium '
db 'Ununquadium '
db 'Ununpentium '
db 'Ununhexium ' ;116
;---------------------------------
Symbols: ;116 элементов
db 'H '
db 'He '
db 'Li '
db 'Be '
db 'B '
db 'C '
db 'N '
db 'O '
db 'F '
db 'Ne '
db 'Na '
db 'Mg '
db 'Al '
db 'Si '
db 'P '
db 'S '
db 'Cl '
db 'Ar '
db 'K '
db 'Ca '
db 'Sc '
db 'Ti '
db 'V '
db 'Cr '
db 'Mn '
db 'Fe '
db 'Co '
db 'Ni '
db 'Cu '
db 'Zn '
db 'Ga '
db 'Ge '
db 'As '
db 'Se '
db 'Br '
db 'Kr '
db 'Rb '
db 'Sr '
db 'Y '
db 'Zr '
db 'Nb '
db 'Mo '
db 'Tc '
db 'Ru '
db 'Rh '
db 'Pd '
db 'Ag '
db 'Cd '
db 'In '
db 'Sn '
db 'Sb '
db 'Te '
db 'I '
db 'Xe '
db 'Cs '
db 'Ba '
db 'La '
db 'Hf '
db 'Ta '
db 'W '
db 'Re '
db 'Os '
db 'Ir '
db 'Pt '
db 'Au '
db 'Hg '
db 'Tl '
db 'Pb '
db 'Bi '
db 'Po '
db 'At '
db 'Rn '
db 'Fr '
db 'Ra '
db 'Ac '
db 'Rf '
db 'Db '
db 'Sg '
db 'Bh '
db 'Hs '
db 'Mt '
db 'Ds '
db 'Rg '
db 'Uub'
db 'Uut'
db 'Uuq'
db 'Uup'
db 'Uuh'
db 'Ce '
db 'Pr '
db 'Nd '
db 'Pm '
db 'Sm '
db 'Eu '
db 'Gd '
db 'Tb '
db 'Dy '
db 'Ho '
db 'Er '
db 'Tm '
db 'Yb '
db 'Lu '
db 'Th '
db 'Pa '
db 'U '
db 'Np '
db 'Pu '
db 'Am '
db 'Cm '
db 'Bk '
db 'Cf '
db 'Es '
db 'Fm '
db 'Md '
db 'No '
db 'Lr '
;АТОМНАЯ МАССА
MassNo: ;116 элементов
db '1.00794' ; 1
db '4.0026 '
db '6.941 '
db '9.01218'
db '10.811 '
db '12.0107'
db '14.0067'
db '15.9994'
db '18.9984'
db '20.179 ' ; 10
db '22.9898'
db '24.305 '
db '26.9815'
db '28.0855'
db '30.9738'
db '32.066 '
db '35.453 '
db '39.948 '
db '39.0983'
db '40.078 ' ; 20
db '44.9559'
db '47.88 '
db '50.9415'
db '51.996 '
db '54.938 '
db '55.847 '
db '58.9332'
db '58.6934'
db '63.546 '
db '65.39 ' ; 30
db '69.723 '
db '72.61 '
db '74.922 '
db '78.96 '
db '79.904 '
db '83.80 '
db '85.47 '
db '87.62 '
db '88.906 '
db '91.224 ' ; 40
db '92.906 '
db '95.94 '
db '(98) '
db '101.07 '
db '102.905'
db '106.42 '
db '107.868'
db '112.41 '
db '114.82 '
db '118.71 ' ; 50
db '121.75 '
db '127.60 '
db '126.90 '
db '131.29 '
db '132.90 '
db '137.33 '
db '138.91 '
db '140.12 '
db '140.91 '
db '144.24 ' ; 60
db '(147) '
db '150.36 '
db '151.96 '
db '157.25 '
db '158.92 '
db '162.50 '
db '164.93 '
db '167.26 '
db '168.93 '
db '173.04 ' ; 70
db '174.97 '
db '178.49 '
db '180.95 '
db '183.85 '
db '186.21 '
db '190.2 '
db '192.22 '
db '195.08 '
db '196.97 '
db '200.59 ' ; 80
db '204.38 '
db '207.19 '
db '208.98 '
db '(209) '
db '(210) '
db '(222) '
db '(223) '
db '(226) '
db '(227) '
db '232.04 ' ; 90
db '(231) '
db '238.029'
db '(237) '
db '(244) '
db '(243) '
db '(247) '
db '(247) '
db '(251) '
db '(254) '
db '(257) ' ; 100
db '(258) '
db '(259) '
db '(262) ' ;103
db '(261) '
db '(262) '
db '(266) '
db '(264) '
db '(269) '
db '(268) '
db '(271) ' ; 110
db '(272) '
db '(285) '
db '(284) '
db '(289) '
db '(288) '
db '(292) ' ;116
;-----------------------
;ЭЛЕКТРООТРИЦАТЕЛЬНОСТЬ
Electr: ; 116 элементов
db '2,1 ' ; 1
db '5,5 '
db '0,97'
db '1,47'
db '2,01'
db '2,50'
db '3,07'
db '3,50'
db '4,10'
db '4,84' ; 10
db '0,93'
db '1,23'
db '1,47'
db '2,25'
db '2,32'
db '2,60'
db '2,83'
db '3,20'
db '0,91'
db '1,04' ; 20
db '1,20'
db '1,32'
db '1,45'
db '1,56'
db '1,60'
db '1,64'
db '1,70'
db '1,75'
db '1,75'
db '1,66' ; 30
db '1,82'
db '2,02'
db '2,11'
db '2,48'
db '2,74'
db '2,94'
db '0,89'
db '0,99'
db '1,11'
db '1,22' ;40
db '1,6 '
db '2,16'
db '1,9 '
db '2.2 '
db '2.28'
db '2,2 '
db '1,93'
db '1,69'
db '1,78'
db '1,96'
db '2,05'
db '2,1 '
db '2,66'
db '??? '
db '0,79'
db '0,89'
db '1,1 '
db '1,12'
db '1,13'
db '1,14' ;60
db '1,13'
db '1,17'
db '1,2 '
db '1,2 '
db '1,2 '
db '1,22'
db '1,23'
db '1,24'
db '1,25'
db '1,1 ' ; 70
db '1,27'
db '1,3 '
db '1,5 '
db '1,36'
db '1,46'
db '1,52'
db '1,55'
db '1,44'
db '1,42'
db '1,42' ; 80
db '1,42'
db '1,55'
db '1,67'
db '1,76'
db '1,90'
db '2,06'
db '0,86'
db '0,97'
db '1,00'
db '1,11' ;90
db '1,14'
db '1,22'
db '1,22'
db '1,2 '
db '1,1 '
db '1,2 '
db '1,1 '
db '1,2 '
db '??? '
db '??? ' ; 100
db '1,2 '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? ' ; 110
db '??? '
db '??? '
db '??? '
db '??? '
db '??? '
db '??? ' ; 116
;-----------------------
;ТЕМПЕРАТУРА ПЛАВЛЕНИЯ 116 элементов
strtbl T_plavl, \
"- 259,19", \
"- 271,15", \
"180,5", \
"1287", \
"2075", \
"4000(графит)", \
"-210,0", \
"-218,7", \
"-219,699", \
"-248,6", \
"97,83", \
"648", \
"660,37", \
"1415", \
"44,14(белый) 593(красный)", \
"119,3", \
"-101,03", \
"-189,34", \
"63,51", \
"842", \ ;20
"1541", \
"1658", \
"1920", \
"1890", \
"1245", \
"1539", \
"1494", \
"1455", \
"1084,5", \
"419,5", \
"29,78", \
"937", \
"817 (под давлением)", \
"217", \
"-7,25", \
"-157,37", \
"39,3", \
"768", \
"1528", \
"1855", \ ;40
"2470", \
"2620", \
"2250", \
"2607", \
"1963", \
"1554", \
"961,93", \
"321,108", \
"156,634", \
"231,9681", \
"630,74", \
"449,8", \
"113,5", \
"-111,85", \
"28,7", \
"727", \
"920", \
"804", \
"931", \
"1024", \ ;60
"1170", \
"1072", \
"826", \
"1312", \
"1356", \
"1409", \
"1470", \
"1522", \
"1545", \
"824", \
"1663", \
"2230", \
"3270", \
"3660", \
"3190", \
"3027", \
"2443", \
"1772", \
"1064,43", \
"-38,862", \ ;80
"303,6", \
"327,502", \
"271,44", \
"254", \
"575", \
"-71,0", \
"21", \
"969", \
"1050", \
"1750", \
"1580", \
"1134", \
"637", \
"640", \
"1292", \
"1345", \
"1050", \
"900", \
"860", \
"???", \ ;100
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \ ;110
"???", \
"???", \
"???", \
"???", \
"???", \
"???" ; 116
;-----------------------
;ТЕМПЕРАТУРА КИПЕНИЯ 116 элементов
strtbl T_kipen, \
"- 252,87", \
"- 268,935", \
"1336,6", \
"2471", \
"3700", \
"4200(графит)", \
"-195,802", \
"-182,962", \
"-188,2", \
"-246,048", \
"886", \
"1095", \
"2500", \
"3250", \
"287,3 - белый ", \
"444,674", \
"-34,1", \
"-185,86", \
"760", \
"1495", \ ;20
"2850", \
"3260", \
"3450", \
"2680", \
"2080", \
"3200", \
"2960", \
"2900", \
"2540", \
"906,2", \
"2403", \
"2850", \
"-", \
"685,3", \
"59,82", \
"153,35", \
"696", \
"1390", \
"3320", \
"4340", \ ;40
"4927", \
"4630", \
"4630", \
"4900", \
"3700", \
"2940", \
"2170", \
"766,5", \
"2024", \
"2620", \
"1634", \
"990", \
"184,35", \
"-108,12", \
"667,6", \
"1860", \
"3450", \
"3450", \
"3510", \
"3080", \ ;60
"3000", \
"1800", \
"1440", \
"3272", \
"3073", \
"2587", \
"2707", \
"2857", \
"1947", \
"1211", \
"3412", \
"4620", \
"5425", \
"6000", \
"5900", \
"5000", \
"4380", \
"3800", \
"2947", \
"356,66", \ ;80
"1457", \
"1745", \
"1564", \
"962", \
"309", \
"-61,9", \
"669", \
"1536", \
"3300", \
"4200", \
"4500", \
"4200", \
"4100", \
"3350", \
"2880", \
"3200", \
"2630", \
"1227", \
"???", \
"???", \ ;100
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \
"???", \ ; 110
"???", \
"???", \
"???", \
"???", \
"???", \
"???" ; 116
;Русское название ; 116 элементов
strtbl Rus_nazv, \
"Водород", \ ;1
"Гелий", \
"Литий", \
"Бериллий", \
"Бор", \
"Углерод", \
"Азот", \
"Кислород", \
"Фтор", \
"Неон", \ ;10
"Натрий", \
"Магний", \
"Алюминий", \
"Кремний", \
"Фосфор", \
"Сера", \
"Хлор", \
"Аргон", \
"Калий", \
"Кальций", \
"Скандий", \
"Титан", \
"Ванадий", \
"Хром", \
"Марганец", \
"Железо", \
"Кобальт", \
"Никель", \
"Медь", \
"Цинк", \ ;30
"Галлий", \
"Германий", \
"Мышьяк", \
"Селен", \
"Бром", \
"Криптон", \
"Рубидий", \
"Стронций", \
"Иттрий", \
"Цирконий", \
"Ниобий", \
"Молибден", \
"Технеций", \
"Рутений", \
"Родий", \
"Палладий", \
"Серебро", \
"Кадмий", \
"Индий", \
"Олово", \ ;50
"Сурьма", \
"Теллур", \
"Йод", \
"Ксенон", \
"Цезий", \
"Барий", \
"Лантан", \
"Церий", \
"Празеодим", \
"Неодим", \
"Прометий", \
"Самарий", \
"Европий", \
"Гадолиний", \
"Тербий", \
"Диспрозий", \
"Гольмий", \
"Эрбий", \
"Тулий", \
"Иттербий", \ ;70
"Лютеций", \
"Гафний", \
"Тантал", \
"Вольфрам", \
"Рений", \
"Осмий", \
"Иридий", \
"Платина", \
"Золото", \
"Ртуть", \
"Таллий", \
"Свинец", \
"Висмут", \
"Полоний", \
"Астат", \
"Радон", \
"Франций", \
"Радий", \
"Актиний", \
"Торий",\
"Протактиний",\
"Уран",\
"Нептуний", \ ;90
"Плутоний", \
"Америций", \
"Кюрий", \
"Берклий", \
"Калифорний", \
"Эйнштейний", \
"Фермий", \
"Менделевий", \
"Нобелий", \
"Лоуренсий", \
"Резерфордий", \
"Дубний", \
"Сиборговий", \
"Борий", \
"Гассий", \
"Мейтнерий", \
"?Дармстадий?", \
"Рентгений", \
"нет названия", \
"нет названия", \ ;110
"нет названия", \
"нет названия", \
"нет названия" ;116
;Первооткрыватели ; 116 элементов
strtbl First_Explore, \
"Г.Кавендиш, 1766", \
"Ж.Жансен, Дж.Н.Локьер, 1868", \
"А.Арфедсон, 1817", \
"Л.Воклен, 1798", \
"Л.Ж.Гей-Люссак 1808", \
"известен до н.э.", \
"Д.Резерфорд, 1772", \
"К.В.Шееле, 1772", \
"А.Муассан, 1886", \
"У.Рамзай,М.Траверс 1898", \
"Г.Дэви, 1807",\
"Г.Дэви, 1808",\
"Х.К.Эрстед, 1825",\
"Ж.Л.Гей-Люссак, Л.Ж.Тенар, 1811",\
"Х.Брандт, 1669",\
"известна до н.э.",\
"К.В.Шееле, 1774",\
"У.Рамзай, Дж.Рэлей, 1894",\
"Г.Дэви, 1807",\
"Г.Дэви, 1808",\
"Л.Ф.Нильсон, 1879",\
"У.Грегор, 1790 ",\
"Г.Роско, 1869",\
"Л.Н.Воклен, 1797",\
"Ю.Ган, 1774",\
"известно до н.э.",\
"Ю.Брандт, 1735",\
"А.Кронштедт, 1751",\
"известна до н.э.",\
"известен со средн. веков",\
"П.Э.Лекок де Буабодран, 1875",\
"К.А.Винклер, 1886",\
"известен со средн. веков",\
"Й.Берцелиус, Й.Ган, 1817",\
"Ж.Балар, 1826",\
"У.Рамзай, М.Траверс, 1898",\
"Р.Бунзен, Г.Кирхгоф, 1861",\
"А.Крофорд, 1808",\
"Ю.Гадолин, 1794",\
"М.Клапрот, 1789",\
"Ч.Хатчет, 1801",\
"К.В.Шееле, 1778",\
"Э.Сегре, К.Перье, 1937",\
"К.К.Клаус, 1844",\
"У.Волластон, 1804",\
"У.Волластон, 1803",\
"известно до н.э.",\
"Ф.Штромейер, 1817",\
"Р.Рейх, И.Рихтер, 1863",\
"известно до н.э.",\
"известна до н.э.",\
"Ф.Мюллер, 1782",\
"Б.Куртуа, 1811",\
"У.Рамзай, М.Траверс, 1898",\
"Р.Бунзен, Г.Кирхгоф, 1860",\
"Г.Дэви, 1774",\
"К.Мосандер, 1839",\
"К.Мосандер, 1839",\
"К.Ауэр фон Вельсбах, 1885",\
"К.Ауэр фон Вельсбах, 1842",\
"Л.Гленденин, Ч.Кориэлл и др., 1942",\
"П.Э.Лекок де Буабодран, 1879",\
"Э.Демарсе, 1901",\
"Ж.Мариньяк, 1880",\
"К.Мосандер, 1843",\
"П.Э.Лекок де Буабодран, 1886",\
"П.Клеве, 1879",\
"К.Мосандер, 1843",\
"П.Клеве, 1879",\
"Ж.Мариньяк, 1878",\
"Ж.Урбэн, Ч.Джеймс, 1907",\
"Д.Костер и др., 1922",\
"А.Г.Экеберг, 1802",\
"К.В.Шееле, 1781",\
"И. и В.Ноддак, О.Берг, 1925",\
"С.Теннант, 1804",\
"С.Теннант, 1804",\
"изв. с древности",\
"известно до н.э.",\
"известна до н.э.",\
"У.Крукс, 1861",\
"известен до н.э.",\
"И.Потт, 1739",\
"М. и П.Кюри, 1898",\
"Д.Корсон др., 1940",\
"Э.Дорн, 1940",\
"М.Перей, 1939",\
"М. и П.Кюри, Ж.Бемюн, 1898",\
"А.Дебьерн, 1899",\
"Й.Берцелиус, 1828",\
"О.Ган, Л.Мейтнер, Ф.Содди, 1918",\
"М.Клапрот, 1789",\
"Э.М.Макмиллан, Ф.Х.Эйблсон, 1940",\
"Г.Сиборг и др., 1940",\
"Г.Сиборг и др., 1944",\
"Г.Сиборг и др., 1944",\
"Г.Сиборг и др., 1949",\
"Г.Сиборг и др., 1950",\
"А.Гиорсо, С.Томпсон, 1952",\
"А.Гиорсо, С.Томпсон, 1952",\
"А.Гиорсо и др., 1955",\
"Учёные СССР, 1966",\
"А.Гиорсо и др., 1961",\
"Г.Н.Флеров и др., 1964",\
"Г.Н.Флеров и др., 1967",\
"Г.Н.Флеров и др., 1974",\
"P.Armbruster, G.Munzenber, 1981",\
"P.Armbruster, G.Munzenber, 1984",\
"P.Armbruster, G.Munzenber, 1982",\
"S.Hofmann, V. Ninov, 1994",\
"S.Hofmann, V. Ninov, 1994",\
"S.Hofmann, V. Ninov, 1996",\
"не открыт",\
"Учёные России, 1998",\
"не открыт",\
"Ю.Ц.Оганессян, В.К.Утенков, 2000"
; Плотность 116 элементов
strtbl Plotnost, \
"-", \ ; 1
"-", \
"535", \
"1848", \
"2460", \
"2267", \
"-", \
"-", \
"-", \
"0,90035 г/л", \
"968", \ ; 10
"1738", \
"2700", \
"2330", \
"1823", \
"1960", \
"-", \
"1,7837 г/л", \
"856", \
"1550", \
"2985", \ ; 20
"4507", \
"6110", \
"7140", \
"7470", \
"7874", \
"8900", \
"8908", \
"8920", \
"7140", \
"5904", \ ; 30
"5323", \
"5727", \
"4819", \
"-", \
"3,745 г/л", \
"1532", \
"2630", \
"4472", \
"6511", \
"8570", \ ; 40
"10280", \
"11500", \
"12370", \
"12450", \
"12023", \
"10490", \
"8650", \
"7310", \
"7310", \
"6697", \ ; 50
"6240", \
"4940", \
"5,851 г/л", \
"1879", \
"3510", \
"6146", \
"6689", \
"6640", \
"6800", \
"7264", \ ; 60
"7353", \
"5244", \
"7901", \
"8219", \
"8551", \
"8795", \
"9066", \
"9321", \
"6570", \
"9841", \ ; 70
"13310", \
"16650", \
"19250", \
"21020", \
"22610", \
"22650", \
"21090", \
"19300", \
"-", \
"11850", \ ; 80
"11340", \
"9780", \
"9196", \
"-", \
"9,73 г/л", \
"2400", \
"5000", \
"10070", \
"11724", \
"15370", \ ; 90
"19050", \
"20450", \
"19816", \
"-", \
"13510", \
"14780", \
"15100", \
"-", \
"-", \
"-", \ ; 100
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-", \
"-" ; 116
;РАСПРОСТРАНЕНИЕ В ЗЕМНОЙ КОРЕ 116 элементов
strtbl Rasprostr, \
"0,14 %", \ ; 1
"менее 0,0015 %", \
"0,0030 %", \
"0,0006 %", \
"0,005 %", \
"0,032 %", \
"0,0046 %", \
"46,60 %", \
"0,070 %", \
"0,00007 г/т", \ ; 10
"2,83 %", \
"2,09 %", \
"8,13 %", \
"27,72 %", \
"0,118 %", \
"0,052 %", \
"0,020 %", \
"0,000004 %", \
"2,59 %", \
"3,63 %", \ ; 20
"0,001 %", \
"0,57 %", \
"0,0110 %", \
"0,0200 %", \
"0,100 %", \
"5,00 %", \
"0,0023 %", \
"0,0080 %", \
"0,0045 %", \
"0,0065 %", \ ; 30
"0,0015 %", \
"0,00015 %", \
"0,00017 %", \
"0,000014 %", \
"0,00016 %", \
"0,000114 % (в атмосфере)", \
"0,0120 %", \
"???", \
"0,0040 %", \
"0,0160 %", \ ; 40
"0,0024 %", \
"0,0003 %", \
"-", \
"0,0000005 %", \
"0.0000001 %", \
"0,000001 %", \
"0,000007 %", \
"0,0000135 %", \
"0,00001 %", \
"0,008 %", \
"0,00005 %", \ ; 50
"0,000001 %", \
"0,00004 %", \
"0,000039 % (в атмосфере)", \
"0,00037 %", \
"0,040 %", \
"0,0029 %", \
"0,007 %", \
"0,0007 %", \
"0,0025 %", \
"-", \ ; 60
"0,0007 %", \
"0,00013 %", \
"0,00054 %", \
"0,00043 %", \
"0,0005 %", \
"0,00013 %", \
"0,00033 %", \
"0,000027 %", \
"0,000033 %", \
"0,00008 %", \ ; 70
"0,0003 - 0,0004 %", \
"0,00025 %", \
"0,0001 %", \
"0,00000007 %", \
"0,000005 %", \
"0,0000001 %", \
"0,0000005 %", \
"0,00000043 %", \
"0,000007 %", \
"0,0003 %", \ ; 80
"0,0015 %", \
"0,00002 %", \
"0,00000000000002 %", \
"17 мг в слое коры 1,6 км", \
"-", \
"-", \
"0,0000000001 %", \
"0,0000000006 %", \
"0,0008 %", \
"-", \ ; 90
"0,0003 %", \
"-", \
"-", \
"0,0003 %", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \ ; 100
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-" ; 116
; степень окисления 116 элементов
strtbl Step_ok, \
"+1 -1", \ ; 1
"-", \
"+1", \
"+2 (+1)", \
"+3 (+2)", \
"+4 -4", \
"от +5 до -3 ", \
"+4 -4", \
"-1", \
"-", \ ; 10
"+1", \
"+2 (+1)", \
"+3 (+1 +2)", \
"+1 +2 +3 +4", \
"-3 +3 +5", \
"-2 +4 +6", \
"-1 +1 +3 +5 +7", \
"-", \
"+1", \
"+2 (+1)", \ ; 20
"+3 (+1 +2)", \
"+4 +2 +3", \
"от +2 до +5", \
"+2 +3 +6 (+4 +5 +1)", \
"от +2 до +7", \
"+2 +3 (+1 +2 +4 +6 +8)", \
"+2 +3 (+1 +4 +5)", \
"+2 (+1 +3 +4)", \
"+1 +2 (+3 +4)", \
"+2", \ ; 30
"+1 +3", \
"+4 +3 +2 +1", \
"+5 +3 -3", \
"+6 +4 -2 (+2)", \
"-1 +1 +3 +5 +7", \
"+2", \
"+1", \
"+2 (+1)", \
"+3", \
"+4 (+1 +2 +3)", \ ; 40
"+5 (+1 +2 +3 +4)", \
"от +2 до +6", \
"от -1 до +7", \
"+3 +4 +6 +8", \
"+1 +2 +3 +4 +5 +6", \
"+1 +2 +3 +4 (+5 +6)", \
"+1 +2 +3", \
"+2 (+1)", \
"+3 (+1)", \
"+2 +4", \ ; 50
"+3 +5 (-3)", \
"-2 +6 +4 (+2)", \
"-1 +1 +3 +5 +7", \
"+2 +4 +6 +8", \
"+1", \
"+2 (+1)", \
"+3", \
"+3 (+4)", \
"+4 +3 (+2)", \
"+4 +3 (+2)", \ ; 60
"+3", \
"+2 +3 (+2)", \
"+3 +2", \
"+3 (+2 +1)", \
"+1 +3 +4", \
"+3 (+2 +4)", \
"+3 (+2)", \
"+3 (+1)", \
"+3 +2 (+4)", \
"+2 +3", \ ; 70
"+3", \
"+4 (+3 +2)", \
"+5 (+2 +3 +4)", \
"от +2 до +6", \
"от +7 до -1", \
"+4 +6 +8 +1 +3 +5", \
"+4 +3 +1 +2 +6", \
"+4 +3 +2 (+5 +6)", \
"+1 +3 (+5)", \
"+2 +1", \ ; 80
"+1 +3", \
"+1 +4 +2", \
"+3 +5 -3 (+1 +2)", \
"+6 +4 +2 -2", \
"-1 +1 +5 (+7)", \
"+2 +4 +6", \
"+1", \
"+2", \
"+3", \
"+4 (+2 +3)", \ ; 90
"+4 +5 (+3)", \
"от +2 до +6", \
"+3 +4 +5 (+6 +7)", \
"от +3 до +7", \
"от +2 до +7", \
"+3 (+4 +6)", \
"+3 (+4)", \
"+2 +3 (+4)", \
"+2 +3", \
"+2 +3", \ ; 100
"+1 +2 +3", \
"+2 +3", \
"+3", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \
"-", \ ; 110
"-", \
"-", \
"-", \
"-", \
"-", \
"-" ; 116
I_END:
sc system_colors