;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 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:
red:
call draw_window
still: ;основной цикл программы
push 10 ;ожидание события
pop eax
int 0x40
dec eax
je red
dec eax
jne button
key:
mov al,2
int 0x40
jmp still
button:
mov al,17 ;получаем ID нажатой кнопки
int 0x40
shr eax,8 ; eax=24-битный ButtonID
cmp eax,1 ;нажата ли "Закрыть" [x]
jne noclose
or eax,-1
int 0x40
noclose:
cmp eax,200
jne no_H
mov eax,1
no_H:
mov [re_ID],eax
;;
call VYVOD
;;
jmp still
draw_window:
mov eax,48
mov ebx,3
mov ecx,sc
mov edx,sizeof.system_colors
int 0x40
mov eax,12 ;begin drawing
xor ebx,ebx
inc ebx
int 0x40
; DRAW WINDOW
xor eax,eax
mov ebx,50*65536+550 ;x
mov ecx,30*65536+450 ;y
mov edx,[sc.work]
or edx,0x13000000 ;style
mov edi,Caption
int 0x40
Nadpisi_v_okne:
mov eax,4 ;вывод текста
mov ecx,0x80000000 ;asciiz, ЦВЕТ !!!
mov ebx,40*65536+225 ;лантаноиды
mov edx,Lantanoid_text
int 0x40
add ebx,20 ;актиноиды
mov edx,Actinoid_text
int 0x40
mov ebx,150*65536+280
mov edx,Por_nomer
int 0x40
add ebx,15
mov edx,Nazvanie
int 0x40
add ebx,15
mov edx,Angl_nazv
int 0x40
add ebx,15
mov edx,Atomic_massa
int 0x40
add ebx,15
mov edx,Plotnost_caption
int 0x40
add ebx,15
mov edx,Step_okisl
int 0x40
add ebx,15
mov edx,Electrootr
int 0x40
add ebx,15
mov edx,T_pl
int 0x40
add ebx,15
mov edx,T_kip
int 0x40
add ebx,15
mov edx,Raspr
int 0x40
add ebx,15
mov edx,Otkrytie
int 0x40
; ВЫВОД НОМЕРОВ ПЕРИОДОВ
mov ebx,30*65536+68
mov edx,Period_text ;1
int 0x40
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 байтам(с нулём)
int 0x40
ret
Table: ;Отрисовка таблицы в виде конопочек
table_rjad_1:
shl eax,1
mov ebx,50*65536+25
mov ecx,60*65536+20
mov edx,200
mov esi,0xE19123
int 0x40
He_:
mov ebx,491*65536+25
mov esi,0x0f0c314
mov edx,2
int 0x40
table_rjad_2:
Li:
mov ebx,50*65536+25
mov ecx,81*65536+20
mov esi,0xE19123
inc edx
int 0x40
Be:
mov ebx,76*65536+25
inc edx
int 0x40
B_:
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,4
table_rjad_2_loop:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_2_loop
table_rjad_3:
Na:
mov ebx,50*65536+25
mov ecx,102*65536+20
mov esi,0xE19123
inc edx
int 0x40
mov ebx,76*65536+25
inc edx
int 0x40
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,4
table_rjad_3_loop:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_3_loop
Table_rjad_4:
K_:
mov ebx,50*65536+25
mov ecx,123*65536+20
mov esi,0xE19123
inc edx
int 0x40
Ca:
mov ebx,76*65536+25
inc edx
int 0x40
Sc:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mov edi,8
Table_rjad_4_loop1:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns Table_rjad_4_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,4
table_rjad_4_loop2:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_4_loop2
Table_rjad_5:
Rb_:
mov ebx,50*65536+25
mov ecx,144*65536+20
mov esi,0xE19123
inc edx
int 0x40
Sr_:
mov ebx,76*65536+25
inc edx
int 0x40
Y_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mov edi,8
Table_rjad_5_loop1:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns Table_rjad_5_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,4
table_rjad_5_loop2:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_5_loop2
Table_rjad_6:
Cs_:
mov ebx,50*65536+25
mov ecx,165*65536+20
mov esi,0xE19123
inc edx
int 0x40
Ba_:
mov ebx,76*65536+25
inc edx
int 0x40
La_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mov edx,71
mov edi,8
Table_rjad_6_loop1:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns Table_rjad_6_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,4
table_rjad_6_loop2:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_6_loop2
Table_rjad_7:
Fr_:
mov ebx,50*65536+25
mov ecx,186*65536+20
mov esi,0xE19123
inc edx
int 0x40
Ra_:
mov ebx,76*65536+25
inc edx
int 0x40
Ac_:
mov ebx,102*65536+25
inc edx
mov esi,0x559beb
int 0x40
mov edx,103
mov edi,8
Table_rjad_7_loop1:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns Table_rjad_7_loop1
mov ebx,361*65536+25
inc edx
mov esi,0x0f0c314
int 0x40
mov edi,2
table_rjad_7_loop2:
add ebx,26*65536
inc edx
int 0x40
dec edi
jns table_rjad_7_loop2
Rjad_1:
Cerium_:
mov ebx,102*65536+25
mov ecx,215*65536+20
mov edx,58
mov esi,0x73beeb
int 0x40
mov edi,12
Rjad_1_loop:
add ebx,26*65536
inc edx
dec edi
int 0x40
jns Rjad_1_loop
Rjad_2:
dgfsfHe_:
mov ebx,102*65536+25
mov ecx,236*65536+20
mov edx,90
int 0x40
mov edi,12
Rjad_2_loop:
add ebx,26*65536
inc edx
dec edi
int 0x40
jns Rjad_2_loop
Nadpisi_na_knopkah:
nadp_rjad1:
;H
shr eax,1
mov ebx,62*65536+68
mov ecx,0x00000000
mov edx,Symbols
mov esi,3
int 0x40
;Ne
mov ebx,500*65536+68
add edx,3
int 0x40
nadp_rjad2_1:
mov ebx,60*65536+88
add edx,3
int 0x40
mov ebx,85*65536+88
add edx,3
int 0x40
nadp_rjad2_2:
mov ebx,374*65536+88
add edx,3
int 0x40
mov edi,4
nadp_rjad2_2_loop:
add ebx,25*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad2_2_loop
nadp_rjad3_1:
mov ebx,60*65536+108
add edx,3
int 0x40
mov ebx,85*65536+108
add edx,3
int 0x40
nadp_rjad3_2:
mov ebx,374*65536+108
add edx,3
int 0x40
mov edi,4
nadp_rjad3_2_loop:
add ebx,25*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad3_2_loop
nadp_rjad4:
mov ebx,60*65536+129
add edx,3
int 0x40
mov edi,16
nadp_rjad4_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad4_loop
nadp_rjad5:
mov ebx,60*65536+150
add edx,3
int 0x40
mov edi,16
nadp_rjad5_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad5_loop
nadp_rjad6:
mov ebx,60*65536+171
add edx,3
int 0x40
mov edi,16
nadp_rjad6_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad6_loop
nadp_rjad7:
mov ebx,60*65536+192
add edx,3
int 0x40
mov edi,9
nadp_rjad7_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad7_loop
mov edi,4
nadp_rjad7_loop2:
add ebx,24*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad7_loop2
nadp_rjad8:
mov ebx,111*65536+222
add edx,3
int 0x40
mov edi,12
nadp_rjad8_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad8_loop
nadp_rjad9:
mov ebx,111*65536+242
add edx,3
int 0x40
mov edi,12
nadp_rjad9_loop:
add ebx,26*65536
add edx,3
int 0x40
dec edi
jns nadp_rjad9_loop
;; - короче выносим в отдельную процедуру
call VYVOD
;;
finish:
mov eax,12 ;end drawing
mov ebx,2
int 0x40
ret
VYVOD:
; 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,280*65536+(15*11)
mov edx,[sc.work]
int 0x40
;;
push edi ; чтобы оптимизировать изменения ebx
; 1 вывод порядкового номера [optmzd-mem]
xor ebx,ebx
or ebx,00000000000000110000000000000000b
mov ecx,[re_ID]
mov edx,320*65536+280+15*0
xor esi,esi
mov eax,47
int 0x40
;ВНИМАНИЕ! ЗДЕСЬ ЗАДАЁТСЯ ЦВЕТ ВСЕГО ОСТАЛЬНОГО ТЕКСТА! [сделано для сокращения кода на 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+280+15*0 ;здесь вносятся координаты, дальше будет лишь 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 пикселей
int 0x40
; 4 вывод атомной массы [optmzd-spd]
mov edx,MassNo
mov edi,[re_ID]
dec edi
mov esi,7 ;длина строки
imul edi,esi ;считаем указатель на нужную строку
add edx,edi
add ebx,15
int 0x40
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
int 0x40
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
int 0x40
ret
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ;;
;; ОБЛАСТЬ ДАННЫХ ;;
;; ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;---- begin ---- Данные для ГЛАВНОГО окна --------------------------
Caption db 'Периодическая система Д.И.Менделеева by [navanax] & [Johnny_B]',0
Plotnost_caption db 'Плотность',0
Atomic_massa db 'Атомная масса',0
Nazvanie db 'Название',0
Angl_nazv db 'Англ. название',0
T_pl db 'Температура пл.',0
T_kip db 'Температура кип.',0
Electrootr db 'Электроотрицательность',0
Raspr db 'Распределение в земн. коре',0
Step_okisl db 'Степень окисления',0
Otkrytie db 'Открытие',0
Por_nomer 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.00797' ; 1
db '4.0026 '
db '6.939 '
db '9.0122 '
db '10.811 '
db '12.0112'
db '14.0067'
db '15.9994'
db '18.9984'
db '20.179 ' ; 10
db '22.9898'
db '24.305 '
db '26.9815'
db '28.086 '
db '30.9738'
db '32.066 '
db '35.453 '
db '39.948 '
db '39.102 '
db '40.08 ' ; 20
db '44.958 '
db '47.88 '
db '50.942 '
db '51.996 '
db '54.938 '
db '55.847 '
db '58.9332'
db '58.69 '
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